function f(a) {
	throw a;
}
var i = void 0,
	j = !0,
	k = null,
	m = !1,
	aa = _SESSION_COOKIE_INDEX,
	ba = encodeURIComponent,
	ca = _HAS_GPLUS_ENABLED,
	n = window,
	da = _PUBLIC_USERNAME,
	ea = Number,
	fa = NaN,
	ha = _ON_LOGIN_PROMOTION,
	ia = Object,
	ja = alert,
	ka = screen,
	la = Infinity,
	p = Error,
	ma = Boolean,
	na = _USER_EMAIL,
	oa = parseInt,
	pa = parseFloat,
	qa = String,
	ra = _SIGNUP_TIME_SEC,
	q = document,
	sa = decodeURIComponent,
	ta = isNaN,
	ua = _USER_ID,
	va = RegExp,
	wa = Array,
	s = Math;

function xa(a, b) {
	return a.width = b
}

function ya(a, b) {
	return a.expand = b
}

function u(a, b) {
	return a.innerHTML = b
}

function za(a, b) {
	return a.value = b
}

function Aa(a, b) {
	return a.metaKey = b
}

function Ba(a, b) {
	return a.currentTarget = b
}

function Ca(a, b) {
	return a.left = b
}

function Da(a, b) {
	return a.screenX = b
}

function Ea(a, b) {
	return a.screenY = b
}

function Fa(a, b) {
	return a.getName = b
}

function Ga(a, b) {
	return a.cssText = b
}

function Ia(a, b) {
	return a.keyCode = b
}

function Ja(a, b) {
	return a.select = b
}

function Ka(a, b) {
	return a.handleEvent = b
}

function La(a, b) {
	return a.type = b
}

function Ma(a, b) {
	return a.tabIndex = b
}

function Na(a, b) {
	return a.clear = b
}

function Oa(a, b) {
	return a.refresh = b
}

function Pa(a, b) {
	return a.clientX = b
}

function Qa(a, b) {
	return a.clientY = b
}

function Ra(a, b) {
	return a.visibility = b
}

function Sa(a, b) {
	return a.scrollTop = b
}

function Ta(a, b) {
	return a.toggle = b
}

function Ua(a, b) {
	return a.altKey = b
}

function Va(a, b) {
	return a.length = b
}

function Wa(a, b) {
	return a.title = b
}

function Xa(a, b) {
	return a.position = b
}

function Ya(a, b) {
	return a.className = b
}

function Za(a, b) {
	return a.abort = b
}

function $a(a, b) {
	return a.opacity = b
}

function ab(a, b) {
	return a.disabled = b
}

function bb(a, b) {
	return a.getId = b
}

function cb(a, b) {
	return a.target = b
}

function db(a, b) {
	return a.userId = b
}

function eb(a, b) {
	return a.anchor = b
}

function fb(a, b) {
	return a.coords = b
}

function gb(a, b) {
	return a.scrollLeft = b
}

function ib(a, b) {
	return a.bottom = b
}

function jb(a, b) {
	return a.href = b
}

function kb(a, b) {
	return a.contains = b
}

function lb(a, b) {
	return a.element = b
}

function mb(a, b) {
	return a.reset = b
}

function nb(a, b) {
	return a.onclick = b
}

function ob(a, b) {
	return a.display = b
}

function pb(a, b) {
	return a.height = b
}

function qb(a, b) {
	return a.right = b
}
var v = "appendChild",
	rb = "origin",
	w = "push",
	sb = "direction",
	tb = "activeElement",
	ub = "getBoundingClientRect",
	vb = "getParent",
	wb = "getLabels",
	xb = "open",
	yb = "test",
	zb = "shift",
	Ab = "relatedTarget",
	Bb = "replaceChild",
	Cb = "exec",
	Db = "clearTimeout",
	x = "width",
	Eb = "text",
	Fb = "collapse",
	Gb = "round",
	Hb = "slice",
	z = "replace",
	Ib = "nodeType",
	Jb = "createCaption",
	Kb = "data",
	Lb = "ceil",
	Mb = "load",
	Nb = "floor",
	Ob = "content",
	Pb = "getElementById",
	Qb = "innerHTML",
	Rb = "offsetWidth",
	Sb = "concat",
	Tb = "charAt",
	Ub = "blur",
	Vb = "createTextNode",
	Wb = "getDate",
	Xb = "subscriberCount",
	Yb = "value",
	Zb = "preventDefault",
	$b = "insertBefore",
	ac = "isReadStateLocked",
	bc = "targetTouches",
	cc = "indexOf",
	dc = "metaKey",
	A = "dispatchEvent",
	ec = "bundles",
	fc = "nodeName",
	gc = "currentTarget",
	B = "left",
	hc = "write",
	ic = "screenX",
	jc = "screenY",
	kc = "match",
	lc = "status",
	mc = "getBoxObjectFor",
	nc = "getName",
	oc = "charCode",
	pc = "remove",
	qc = "focus",
	C = "streamId",
	rc = "createElement",
	sc = "scrollHeight",
	D = "keyCode",
	tc = "children",
	uc = "firstChild",
	vc = "select",
	wc = "forEach",
	xc = "authorPhotoUrl",
	yc = "clientLeft",
	zc = "setAttribute",
	Ac = "clientTop",
	Bc = "play",
	Cc = "handleEvent",
	Dc = "detach",
	E = "type",
	Ec = "translate",
	Fc = "clear",
	Gc = "snippet",
	Hc = "childNodes",
	Ic = "refresh",
	Jc = "defaultView",
	Kc = "categories",
	Lc = "name",
	Mc = "author",
	Nc = "items",
	Oc = "nextSibling",
	Pc = "contentWindow",
	Qc = "getTime",
	Rc = "impressionTime",
	Sc = "setActive",
	Tc = "getElementsByTagName",
	Uc = "clientX",
	Vc = "clientY",
	Wc = "documentElement",
	Xc = "substr",
	Yc = "fill",
	Zc = "scrollTop",
	$c = "toggle",
	ad = "stop",
	bd = "toString",
	cd = "getMonth",
	dd = "altKey",
	ed = "authorName",
	fd = "getHandler",
	gd = "velocity",
	F =
		"length",
	hd = "propertyIsEnumerable",
	id = "title",
	jd = "query",
	kd = "subscriptions",
	G = "prototype",
	ld = "className",
	md = "index",
	nd = "clientWidth",
	od = "abort",
	pd = "checked",
	qd = "setTimeout",
	rd = "document",
	sd = "ctrlKey",
	td = "split",
	ud = "offsetParent",
	vd = "setInterval",
	wd = "stopPropagation",
	xd = "stack",
	yd = "location",
	zd = "save",
	Ad = "count",
	Bd = "disabled",
	Cd = "offsetLeft",
	Dd = "message",
	Ed = "hasOwnProperty",
	I = "style",
	J = "body",
	Fd = "getResponseHeader",
	Gd = "ownerDocument",
	Hd = "removeChild",
	Id = "getId",
	Jd = "naturalWidth",
	Kd = "search",
	K = "target",
	Ld = "lastChild",
	L = "call",
	Md = "userId",
	Nd = "anchor",
	Od = "scrollWidth",
	Pd = "subscribers",
	Qd = "start",
	Rd = "getAttribute",
	Sd = "coords",
	Td = "protocol",
	Ud = "getFullYear",
	Vd = "clientHeight",
	Wd = "scrollLeft",
	Xd = "charCodeAt",
	Yd = "naturalHeight",
	Zd = "bottom",
	$d = "currentStyle",
	ae = "href",
	be = "substring",
	ce = "feeds",
	de = "documentMode",
	ee = "action",
	fe = "every",
	ge = "contains",
	he = "apply",
	ie = "shiftKey",
	je = "tagName",
	ke = "element",
	le = "contentDocument",
	me = "reset",
	ne = "startTime",
	oe = "parentNode",
	pe = "update",
	qe = "fileName",
	re = "display",
	te = "label",
	ue = "offsetTop",
	ve = "description",
	M = "height",
	we = "splice",
	xe = "offsetHeight",
	N = "join",
	ye = "unshift",
	ze = "execScript",
	Ae = "nodeValue",
	Be = "toLowerCase",
	Ce = "right",
	O, De = /["^<>?&\\/,]+/,
	Ee = 80,
	Fe = "http https ftp feed gopher mailto mms news nntp rtsp telnet aim callto ichat itms qsinstall skype svn spotify".split(" "),
	Ge = "/api/0/preference/set",
	He = "/api/0/preference/list",
	Ie = "/api/0/stream/details",
	Je = "/api/0/stream/items/count",
	Ke = "/api/0/related/list",
	Le = "/api/0/edit-tag",
	Me = "/api/0/disable-tag",
	Ne = "/api/0/rename-tag",
	Oe = "/api/0/subscription/list",
	Pe = "/api/0/subscription/edit",
	Qe = "/api/0/mark-all-as-read",
	Re = "/api/0/token",
	Se = "/api/0/subscribed",
	Te = "/api/0/recommendation/edit",
	Ue = "/api/0/edit-bundle",
	Ve = "/api/0/delete-bundle",
	We = "/view/",
	Xe = "/public/atom/",
	Ye = "/overview",
	Ze = "/directory",
	$e = "/directory/search",
	af = "/trends",
	bf = "/captcha-question",
	cf =
		"/s2",
	df = "//s2.googleusercontent.com",
	ef = "//s2.googleusercontent.com/s2",
	ff = "/js-load-error",
	gf = "/js-error",
	hf = "/shared/",
	jf = "/logging",
	kf = "/email-bundle",
	lf = "label",
	mf = "explore/prefs",
	nf = "feed-recommendations/prefs",
	of = {
		id: "density",
		"default": "large"
	}, pf = {
		id: "read-items-visible",
		"default": "true"
	}, qf = {
		id: "show-all-tree-items",
		"default": "true"
	}, rf = {
		id: "is-card-view",
		"default": "true"
	}, sf = {
		id: "show-minimized-navigation",
		"default": "false"
	}, tf = {
		id: "show-oldest-interrupt",
		"default": "true"
	}, uf = {
		id: "show-scroll-help",
		"default": "true"
	}, vf = {
		id: "scroll-tracking-enabled",
		"default": "true"
	}, wf = {
		id: "start-page",
		"default": "home"
	}, xf = {
		id: "custom-favicons-enabled",
		"default": "true"
	}, yf = {
		id: "blogger-following-opt-out",
		"default": "false"
	}, zf = {
		id: "show-blogger-following-intro",
		"default": "true"
	}, Af = {
		id: "show-search-clarification",
		"default": "true"
	}, Bf = {
		id: "smooth-scroll-enabled",
		"default": "false"
	}, Cf = {
		id: "item-actions",
		"default": "{}"
	}, Df = {
		id: "confirm-mark-as-read",
		"default": "true"
	},
	Ef = {
		id: "tree-alpha-sort",
		"default": "false"
	}, Ff = {
		id: "custom-item-links",
		"default": "{}"
	}, Gf = {
		id: "lhn-prefs",
		"default": "{}"
	}, Hf = {
		id: "signup-source",
		"default": k
	}, If = {
		id: "use-public-username",
		"default": "true"
	}, Jf = {
		id: "show-poptart-stream-interruption",
		"default": "true"
	}, Kf = {
		id: "unsupported-browser-warning-last-shown",
		"default": "0"
	}, Lf = {
		id: "on-login-version-shown",
		"default": "0"
	}, Mf = {
		id: "is-expanded",
		"default": "true"
	}, Nf = {
		id: "is-translated",
		"default": "false"
	}, Of = {
		id: "ranking",
		"default": "global"
	}, Pf = {
		id: "subscription-ordering",
		"default": k
	}, Qf = {
		id: "viewer-read-items-visible",
		"default": "true"
	}, Rf = "RECOMMENDATION",
	Sf = "token-fetch",
	Tf = "viewer-buttons",
	Uf = "overview-stream",
	Vf = "lhn-context-menu",
	Wf = "sandbar-sharebox",
	Xf = "konami",
	Yf = "mozilla",
	Zf = "ie",
	$f = "ie6",
	ag = "ie7",
	bg = "ie8",
	cg = "safari",
	dg = "android",
	eg = "chrome",
	fg = "opera",
	gg = "unknown",
	hg = "bad-json",
	ig = "dismiss",
	jg = "view",
	kg = "subscribe",
	lg = "plusone-action",
	mg = "share-action",
	ng = "email-action",
	pg = "tags-action";
var qg = {
	Fb: "Read items",
	wb: "Your read items",
	EMPTY: "You have no read items.",
	ae: "Items read by %1",
	be: "%1 hasn&#39;t yet read anything."
}, rg = {
		Fb: "All items",
		wb: "Your reading list",
		EMPTY: "Your reading list is empty.",
		$d: "Your reading list has no unread items.",
		ae: "The reading list of %1",
		be: "The reading list of %1 is currently empty.",
		fg: "You have no unread items from the reading list of %1"
	}, sg = {
		Fb: "Starred items",
		wb: "Your starred items",
		EMPTY: "You have no starred items.",
		$d: "You have no unread starred items.",
		ae: "Items starred by %1",
		be: "%1 has no starred items.",
		fg: "You have read all of the items starred by %1."
	}, tg = {
		Fb: "Liked items",
		wb: "Your liked items",
		EMPTY: "You have no liked items.",
		$d: "You have no unread liked items.",
		ae: "Items liked by %1",
		be: "%1 has no liked items.",
		fg: "You have read all of the items liked by %1."
	}, ug = {
		Fb: "Items you&#39;re not interested in",
		wb: "Items you&#39;re not interested in",
		EMPTY: "There are no items you&#39;re not interested in."
	}, vg = {
		wb: "Your &quot;%1&quot; items",
		EMPTY: "You have no &quot;%1&quot; items.",
		$d: "You have no unread &quot;%1&quot; items.",
		ae: "&quot;%1&quot; via %2",
		be: "There are currently no &quot;%1&quot; via %2 items.",
		fg: "You have read all of the &quot;%1&quot; via %2 items."
	}, wg = {
		wb: "Your &quot;kept unread&quot; items",
		Fb: "&quot;Kept unread&quot; items",
		EMPTY: "You have no &quot;kept unread&quot; items."
	}, xg = {
		wb: "Your shared items",
		Fb: "Shared items",
		EMPTY: "You have no shared items.",
		ae: "Items shared by %1",
		be: "%1 has no shared items."
	}, yg = {
		wb: "Blogs I&#39;m following",
		Fb: "Blogs I&#39;m following",
		EMPTY: "The blogs you&#39;re following have no items.",
		$d: "The blogs you&#39;re following have no unread items."
	}, zg = {
		wb: "Your posts",
		Fb: "Posts",
		EMPTY: "You have no posts.",
		$d: "You have no unread posts.",
		ae: "Posts by %1",
		be: "%1 has no posts.",
		fg: "You have read all of the posts by %1."
	}, Ag = {
		wb: "Your links",
		Fb: "Links",
		EMPTY: "You have no links.",
		$d: "You have no unread links.",
		ae: "Links by %1",
		be: "%1 has no links.",
		fg: "You have read all of the links posted by %1."
	}, Bg = {
		wb: "Your notes",
		Fb: "Notes",
		EMPTY: "You have no notes.",
		$d: "You have no unread notes."
	}, Cg = {
		Dr: "Your tags:",
		zq: "You have no tags",
		Aq: "Tags can be added to subscriptions by clicking on &quot;Settings&quot;.",
		Os: "No tags match!",
		prompt: "Type in a tag name..."
	}, Dg = {
		Dr: "Your subscriptions:",
		zq: "You have no subscriptions",
		Aq: "Subscriptions can be added by clicking on &quot;Settings&quot;",
		Os: "No subscriptions match!",
		prompt: "Type in a subscription..."
	};
var Eg = "Jan Feb Mar Apr May Jun Jul Aug Sep Oct Nov Dec".split(" "),
	Fg = ["AM", "PM"];

function Gg(a, b) {
	a = qa(a);
	return wa(s.max(0, b - a[F] + 1))[N]("0") + a
}

function Hg(a) {
	return wa[G][N][L](arguments, "")
};
var Ig = Ig || {}, Jg = this;

function Kg(a, b, c) {
	a = a[td](".");
	c = c || Jg;
	!(a[0] in c) && c[ze] && c[ze]("var " + a[0]);
	for (var d; a[F] && (d = a[zb]());)!a[F] && Lg(b) ? c[d] = b : c = c[d] ? c[d] : c[d] = {}
}

function Mg(a, b) {
	for (var c = a[td]("."), d = b || Jg, e; e = c[zb]();)
		if (d[e] != k) d = d[e];
		else return k;
	return d
}

function Ng() {}

function Og(a) {
	a.fa = function () {
		return a.Kr ? a.Kr : a.Kr = new a
	}
}

function Pg(a) {
	var b = typeof a;
	if ("object" == b)
		if (a) {
			if (a instanceof wa) return "array";
			if (a instanceof ia) return b;
			var c = ia[G][bd][L](a);
			if ("[object Window]" == c) return "object";
			if ("[object Array]" == c || "number" == typeof a[F] && "undefined" != typeof a[we] && "undefined" != typeof a[hd] && !a[hd]("splice")) return "array";
			if ("[object Function]" == c || "undefined" != typeof a[L] && "undefined" != typeof a[hd] && !a[hd]("call")) return "function"
		} else return "null";
		else if ("function" == b && "undefined" == typeof a[L]) return "object";
	return b
}

function Lg(a) {
	return a !== i
}

function Qg(a) {
	return "array" == Pg(a)
}

function Rg(a) {
	var b = Pg(a);
	return "array" == b || "object" == b && "number" == typeof a[F]
}

function Sg(a) {
	return "string" == typeof a
}

function Tg(a) {
	return "number" == typeof a
}

function Ug(a) {
	return "function" == Pg(a)
}

function Vg(a) {
	var b = typeof a;
	return "object" == b && a != k || "function" == b
}

function Wg(a) {
	return a[Xg] || (a[Xg] = ++Yg)
}
var Xg = "closure_uid_" + s[Nb](2147483648 * s.random())[bd](36),
	Yg = 0;

function Zg(a, b, c) {
	return a[L][he](a.Pp, arguments)
}

function $g(a, b, c) {
	a || f(p());
	if (2 < arguments[F]) {
		var d = wa[G][Hb][L](arguments, 2);
		return function () {
			var e = wa[G][Hb][L](arguments);
			wa[G][ye][he](e, d);
			return a[he](b, e)
		}
	}
	return function () {
		return a[he](b, arguments)
	}
}

function P(a, b, c) {
	P = Function[G].Pp && -1 != Function[G].Pp[bd]()[cc]("native code") ? Zg : $g;
	return P[he](k, arguments)
}

function Q(a, b) {
	var c = wa[G][Hb][L](arguments, 1);
	return function () {
		var d = wa[G][Hb][L](arguments);
		d[ye][he](d, c);
		return a[he](this, d)
	}
}
var ah = Date.now || function () {
		return +new Date
	};

function bh(a) {
	if (Jg[ze]) Jg[ze](a, "JavaScript");
	else if (Jg.eval)
		if (ch == k && (Jg.eval("var _et_ = 1;"), "undefined" != typeof Jg._et_ ? (delete Jg._et_, ch = j) : ch = m), ch) Jg.eval(a);
		else {
			var b = Jg[rd],
				c = b[rc]("script");
			La(c, "text/javascript");
			c.defer = m;
			c[v](b[Vb](a));
			b[J][v](c);
			b[J][Hd](c)
		} else f(p("goog.globalEval not available"))
}
var ch = k;

function R(a, b) {
	function c() {}
	c.prototype = b[G];
	a.a = b[G];
	a.prototype = new c;
	a[G].constructor = a
}

function dh(a) {
	p.captureStackTrace ? p.captureStackTrace(this, dh) : this.stack = p()[xd] || "";
	a && (this.message = qa(a))
}
R(dh, p);
dh[G].name = "CustomError";

function eh(a, b) {
	return 0 == a.lastIndexOf(b, 0)
}

function fh(a, b) {
	var c = a[F] - b[F];
	return 0 <= c && a[cc](b, c) == c
}

function gh(a, b) {
	for (var c = 1; c < arguments[F]; c++) {
		var d = qa(arguments[c])[z](/\$/g, "$$$$");
		a = a[z](/\%s/, d)
	}
	return a
}

function hh(a) {
	return a[z](/[\s\xa0]+/g, " ")[z](/^\s+|\s+$/g, "")
}

function ih(a) {
	return /^[\s\xa0]*$/ [yb](a)
}

function jh(a) {
	return ih(a == k ? "" : qa(a))
}

function kh(a) {
	return a[z](/[\t\r\n ]+/g, " ")[z](/^[\t\r\n ]+|[\t\r\n ]+$/g, "")
}

function lh(a) {
	return a[z](/^[\s\xa0]+|[\s\xa0]+$/g, "")
}

function mh(a, b) {
	var c = qa(a)[Be](),
		d = qa(b)[Be]();
	return c < d ? -1 : c == d ? 0 : 1
}

function nh(a) {
	return ba(qa(a))
}

function oh(a) {
	return sa(a[z](/\+/g, " "))
}

function ph(a, b) {
	if (b) return a[z](qh, "&amp;")[z](rh, "&lt;")[z](sh, "&gt;")[z](th, "&quot;");
	if (!uh[yb](a)) return a; - 1 != a[cc]("&") && (a = a[z](qh, "&amp;")); - 1 != a[cc]("<") && (a = a[z](rh, "&lt;")); - 1 != a[cc](">") && (a = a[z](sh, "&gt;")); - 1 != a[cc]('"') && (a = a[z](th, "&quot;"));
	return a
}
var qh = /&/g,
	rh = /</g,
	sh = />/g,
	th = /\"/g,
	uh = /[&<>\"]/;

function vh(a) {
	return wh(a, "&") ? "document" in Jg ? xh(a) : yh(a) : a
}

function xh(a) {
	var b = {
		"&amp;": "&",
		"&lt;": "<",
		"&gt;": ">",
		"&quot;": '"'
	}, c = q[rc]("div");
	return a[z](zh, function (d, e) {
		var g = b[d];
		if (g) return g;
		if ("#" == e[Tb](0)) {
			var h = ea("0" + e[Xc](1));
			ta(h) || (g = qa.fromCharCode(h))
		}
		g || (u(c, d + " "), g = c[uc][Ae][Hb](0, -1));
		return b[d] = g
	})
}

function yh(a) {
	return a[z](/&([^;]+);/g, function (b, c) {
		switch (c) {
		case "amp":
			return "&";
		case "lt":
			return "<";
		case "gt":
			return ">";
		case "quot":
			return '"';
		default:
			if ("#" == c[Tb](0)) {
				var d = ea("0" + c[Xc](1));
				if (!ta(d)) return qa.fromCharCode(d)
			}
			return b
		}
	})
}
var zh = /&([^;\s<&]+);?/g;

function Ah(a, b, c) {
	c && (a = vh(a));
	a[F] > b && (a = a[be](0, b - 3) + "...");
	c && (a = ph(a));
	return a
}

function wh(a, b) {
	return -1 != a[cc](b)
}

function Bh(a) {
	return qa(a)[z](/([-()\[\]{}+?*.$\^|,:#<!\\])/g, "\\$1")[z](/\x08/g, "\\x08")
}

function Ch(a) {
	return qa(a)[z](/\-([a-z])/g, function (b, c) {
		return c.toUpperCase()
	})
}
var Dh = wa[G],
	Eh = Dh[cc] ? function (a, b, c) {
		return Dh[cc][L](a, b, c)
	} : function (a, b, c) {
		c = c == k ? 0 : 0 > c ? s.max(0, a[F] + c) : c;
		if (Sg(a)) return !Sg(b) || 1 != b[F] ? -1 : a[cc](b, c);
		for (; c < a[F]; c++)
			if (c in a && a[c] === b) return c;
		return -1
	}, Fh = Dh[wc] ? function (a, b, c) {
		Dh[wc][L](a, b, c)
	} : function (a, b, c) {
		for (var d = a[F], e = Sg(a) ? a[td]("") : a, g = 0; g < d; g++) g in e && b[L](c, e[g], g, a)
	}, Gh = Dh.filter ? function (a, b, c) {
		return Dh.filter[L](a, b, c)
	} : function (a, b, c) {
		for (var d = a[F], e = [], g = 0, h = Sg(a) ? a[td]("") : a, l = 0; l < d; l++)
			if (l in h) {
				var r = h[l];
				b[L](c,
					r, l, a) && (e[g++] = r)
			}
		return e
	}, Hh = Dh.map ? function (a, b, c) {
		return Dh.map[L](a, b, c)
	} : function (a, b, c) {
		for (var d = a[F], e = wa(d), g = Sg(a) ? a[td]("") : a, h = 0; h < d; h++) h in g && (e[h] = b[L](c, g[h], h, a));
		return e
	}, Ih = Dh.some ? function (a, b, c) {
		return Dh.some[L](a, b, c)
	} : function (a, b, c) {
		for (var d = a[F], e = Sg(a) ? a[td]("") : a, g = 0; g < d; g++)
			if (g in e && b[L](c, e[g], g, a)) return j;
		return m
	}, Jh = Dh[fe] ? function (a, b, c) {
		return Dh[fe][L](a, b, c)
	} : function (a, b, c) {
		for (var d = a[F], e = Sg(a) ? a[td]("") : a, g = 0; g < d; g++)
			if (g in e && !b[L](c, e[g], g, a)) return m;
		return j
	};

function Kh(a, b) {
	return 0 <= Eh(a, b)
}

function Lh(a, b) {
	var c = Eh(a, b),
		d;
	(d = 0 <= c) && Dh[we][L](a, c, 1);
	return d
}

function Nh(a) {
	return Dh[Sb][he](Dh, arguments)
}

function Oh(a) {
	var b = a[F];
	if (0 < b) {
		for (var c = wa(b), d = 0; d < b; d++) c[d] = a[d];
		return c
	}
	return []
}

function Ph(a, b) {
	for (var c = 1; c < arguments[F]; c++) {
		var d = arguments[c],
			e;
		if (Qg(d) || (e = Rg(d)) && d[Ed]("callee")) a[w][he](a, d);
		else if (e)
			for (var g = a[F], h = d[F], l = 0; l < h; l++) a[g + l] = d[l];
		else a[w](d)
	}
}

function Qh(a, b, c, d) {
	return Dh[we][he](a, Rh(arguments, 1))
}

function Rh(a, b, c) {
	return 2 >= arguments[F] ? Dh[Hb][L](a, b) : Dh[Hb][L](a, b, c)
}

function Sh(a) {
	for (var b = [], c = 0; c < arguments[F]; c++) {
		var d = arguments[c];
		Qg(d) ? b[w][he](b, Sh[he](k, d)) : b[w](d)
	}
	return b
}
var Th;

function Uh(a) {
	a = a[ld];
	return Sg(a) && a[kc](/\S+/g) || []
}

function S(a, b) {
	var c = Uh(a),
		d = Rh(arguments, 1),
		e = c[F] + d[F];
	Vh(c, d);
	Ya(a, c[N](" "));
	return c[F] == e
}

function T(a, b) {
	var c = Uh(a),
		d = Rh(arguments, 1),
		e = Wh(c, d);
	Ya(a, e[N](" "));
	return e[F] == c[F] - d[F]
}

function Vh(a, b) {
	for (var c = 0; c < b[F]; c++) Kh(a, b[c]) || a[w](b[c])
}

function Wh(a, b) {
	return Gh(a, function (c) {
		return !Kh(b, c)
	})
}

function Xh(a, b, c) {
	for (var d = Uh(a), e = m, g = 0; g < d[F]; g++) d[g] == b && (Qh(d, g--, 1), e = j);
	e && (d[w](c), Ya(a, d[N](" ")));
	return e
}

function Yh(a, b, c) {
	var d = Uh(a);
	Sg(b) ? Lh(d, b) : Qg(b) && (d = Wh(d, b));
	Sg(c) && !Kh(d, c) ? d[w](c) : Qg(c) && Vh(d, c);
	Ya(a, d[N](" "))
}

function Zh(a, b) {
	return Kh(Uh(a), b)
}

function $h(a, b, c) {
	c ? S(a, b) : T(a, b)
}

function ai(a, b) {
	var c = !Zh(a, b);
	$h(a, b, c);
	return c
}
var bi = "StopIteration" in Jg ? Jg.StopIteration : p("StopIteration");

function ci() {}
ci[G].sk = function () {
	f(bi)
};
ci[G].th = function () {
	return this
};

function di(a) {
	if (a instanceof ci) return a;
	if ("function" == typeof a.th) return a.th(m);
	if (Rg(a)) {
		var b = 0,
			c = new ci;
		c.sk = function () {
			for (;;) {
				b >= a[F] && f(bi);
				if (b in a) return a[b++];
				b++
			}
		};
		return c
	}
	f(p("Not implemented"))
}

function ei(a, b, c) {
	if (Rg(a)) try {
		Fh(a, b, c)
	} catch (d) {
		d !== bi && f(d)
	} else {
		a = di(a);
		try {
			for (;;) b[L](c, a.sk(), i, a)
		} catch (e) {
			e !== bi && f(e)
		}
	}
}

function fi(a, b, c) {
	a = di(a);
	try {
		for (;;)
			if (b[L](c, a.sk(), i, a)) return j
	} catch (d) {
		d !== bi && f(d)
	}
	return m
}

function gi(a, b, c) {
	for (var d in a) b[L](c, a[d], d, a)
}

function hi(a, b, c) {
	var d = {}, e;
	for (e in a) b[L](c, a[e], e, a) && (d[e] = a[e]);
	return d
}

function ii(a, b, c) {
	var d = {}, e;
	for (e in a) d[e] = b[L](c, a[e], e, a);
	return d
}

function ji(a, b, c) {
	for (var d in a)
		if (b[L](c, a[d], d, a)) return j;
	return m
}

function ki(a) {
	var b = [],
		c = 0,
		d;
	for (d in a) b[c++] = a[d];
	return b
}

function li(a) {
	var b = [],
		c = 0,
		d;
	for (d in a) b[c++] = d;
	return b
}

function mi(a) {
	for (var b in a) return m;
	return j
}

function ni(a, b) {
	var c;
	(c = b in a) && delete a[b];
	return c
}

function oi(a, b, c) {
	b in a && f(p('The object already contains the key "' + b + '"'));
	a[b] = c
}

function pi(a) {
	var b = {}, c;
	for (c in a) b[c] = a[c];
	return b
}
var qi = "constructor hasOwnProperty isPrototypeOf propertyIsEnumerable toLocaleString toString valueOf".split(" ");

function ri(a, b) {
	for (var c, d, e = 1; e < arguments[F]; e++) {
		d = arguments[e];
		for (c in d) a[c] = d[c];
		for (var g = 0; g < qi[F]; g++) c = qi[g], ia[G][Ed][L](d, c) && (a[c] = d[c])
	}
}

function si(a) {
	var b = arguments[F];
	if (1 == b && Qg(arguments[0])) return si[he](k, arguments[0]);
	b % 2 && f(p("Uneven number of arguments"));
	for (var c = {}, d = 0; d < b; d += 2) c[arguments[d]] = arguments[d + 1];
	return c
}

function ti(a) {
	var b = arguments[F];
	if (1 == b && Qg(arguments[0])) return ti[he](k, arguments[0]);
	for (var c = {}, d = 0; d < b; d++) c[arguments[d]] = j;
	return c
}

function ui(a) {
	if ("function" == typeof a.qe) a = a.qe();
	else if (Rg(a) || Sg(a)) a = a[F];
	else {
		var b = 0,
			c;
		for (c in a) b++;
		a = b
	}
	return a
}

function vi(a) {
	if ("function" == typeof a.ub) return a.ub();
	if (Sg(a)) return a[td]("");
	if (Rg(a)) {
		for (var b = [], c = a[F], d = 0; d < c; d++) b[w](a[d]);
		return b
	}
	return ki(a)
}

function wi(a) {
	if ("function" == typeof a.xf) return a.xf();
	if ("function" != typeof a.ub) {
		if (Rg(a) || Sg(a)) {
			var b = [];
			a = a[F];
			for (var c = 0; c < a; c++) b[w](c);
			return b
		}
		return li(a)
	}
}

function xi(a, b, c) {
	if ("function" == typeof a[wc]) a[wc](b, c);
	else if (Rg(a) || Sg(a)) Fh(a, b, c);
	else
		for (var d = wi(a), e = vi(a), g = e[F], h = 0; h < g; h++) b[L](c, e[h], d && d[h], a)
}

function yi(a, b, c) {
	if ("function" == typeof a[fe]) return a[fe](b, c);
	if (Rg(a) || Sg(a)) return Jh(a, b, c);
	for (var d = wi(a), e = vi(a), g = e[F], h = 0; h < g; h++)
		if (!b[L](c, e[h], d && d[h], a)) return m;
	return j
}

function zi(a, b) {
	this.Aa = {};
	this.ja = [];
	var c = arguments[F];
	if (1 < c) {
		c % 2 && f(p("Uneven number of arguments"));
		for (var d = 0; d < c; d += 2) this.set(arguments[d], arguments[d + 1])
	} else a && this.fj(a)
}
O = zi[G];
O.N = 0;
O.$i = 0;
O.qe = function () {
	return this.N
};
O.ub = function () {
	Ai(this);
	for (var a = [], b = 0; b < this.ja[F]; b++) a[w](this.Aa[this.ja[b]]);
	return a
};
O.xf = function () {
	Ai(this);
	return this.ja[Sb]()
};
O.xd = function (a) {
	return Bi(this.Aa, a)
};
O.Ql = function (a) {
	for (var b = 0; b < this.ja[F]; b++) {
		var c = this.ja[b];
		if (Bi(this.Aa, c) && this.Aa[c] == a) return j
	}
	return m
};
O.W = function (a, b) {
	if (this === a) return j;
	if (this.N != a.qe()) return m;
	var c = b || Ci;
	Ai(this);
	for (var d, e = 0; d = this.ja[e]; e++)
		if (!c(this.ma(d), a.ma(d))) return m;
	return j
};

function Ci(a, b) {
	return a === b
}
O.Gf = function () {
	return 0 == this.N
};
Na(O, function () {
	this.Aa = {};
	Va(this.ja, 0);
	this.$i = this.N = 0
});
O.remove = function (a) {
	return Bi(this.Aa, a) ? (delete this.Aa[a], this.N--, this.$i++, this.ja[F] > 2 * this.N && Ai(this), j) : m
};

function Ai(a) {
	if (a.N != a.ja[F]) {
		for (var b = 0, c = 0; b < a.ja[F];) {
			var d = a.ja[b];
			Bi(a.Aa, d) && (a.ja[c++] = d);
			b++
		}
		Va(a.ja, c)
	}
	if (a.N != a.ja[F]) {
		for (var e = {}, c = b = 0; b < a.ja[F];) d = a.ja[b], Bi(e, d) || (a.ja[c++] = d, e[d] = 1), b++;
		Va(a.ja, c)
	}
}
O.ma = function (a, b) {
	return Bi(this.Aa, a) ? this.Aa[a] : b
};
O.set = function (a, b) {
	Bi(this.Aa, a) || (this.N++, this.ja[w](a), this.$i++);
	this.Aa[a] = b
};
O.fj = function (a) {
	var b;
	a instanceof zi ? (b = a.xf(), a = a.ub()) : (b = li(a), a = ki(a));
	for (var c = 0; c < b[F]; c++) this.set(b[c], a[c])
};
O.Na = function () {
	return new zi(this)
};
O.th = function (a) {
	Ai(this);
	var b = 0,
		c = this.ja,
		d = this.Aa,
		e = this.$i,
		g = this,
		h = new ci;
	h.sk = function () {
		for (;;) {
			e != g.$i && f(p("The map has changed since the iterator was created"));
			b >= c[F] && f(bi);
			var l = c[b++];
			return a ? l : d[l]
		}
	};
	return h
};

function Bi(a, b) {
	return ia[G][Ed][L](a, b)
}

function Di(a) {
	this.Aa = new zi;
	a && this.fj(a)
}

function Ei(a) {
	var b = typeof a;
	return "object" == b && a || "function" == b ? "o" + Wg(a) : b[Xc](0, 1) + a
}
O = Di[G];
O.qe = function () {
	return this.Aa.qe()
};
O.add = function (a) {
	this.Aa.set(Ei(a), a)
};
O.fj = function (a) {
	a = vi(a);
	for (var b = a[F], c = 0; c < b; c++) this.add(a[c])
};
O.Qd = function (a) {
	a = vi(a);
	for (var b = a[F], c = 0; c < b; c++) this[pc](a[c])
};
O.remove = function (a) {
	return this.Aa[pc](Ei(a))
};
Na(O, function () {
	this.Aa[Fc]()
});
O.Gf = function () {
	return this.Aa.Gf()
};
kb(O, function (a) {
	return this.Aa.xd(Ei(a))
});
O.Vm = function (a) {
	var b = new Di;
	a = vi(a);
	for (var c = 0; c < a[F]; c++) {
		var d = a[c];
		this[ge](d) && b.add(d)
	}
	return b
};
O.ub = function () {
	return this.Aa.ub()
};
O.Na = function () {
	return new Di(this)
};
O.W = function (a) {
	return this.qe() == ui(a) && Fi(this, a)
};

function Fi(a, b) {
	var c = ui(b);
	if (a.qe() > c) return m;
	!(b instanceof Di) && 5 < c && (b = new Di(b));
	return yi(a, function (d) {
		if ("function" == typeof b[ge]) d = b[ge](d);
		else if ("function" == typeof b.Ql) d = b.Ql(d);
		else if (Rg(b) || Sg(b)) d = Kh(b, d);
		else a: {
			for (var e in b)
				if (b[e] == d) {
					d = j;
					break a
				}
			d = m
		}
		return d
	})
}
O.th = function () {
	return this.Aa.th(m)
};
var Gi, Hi, Ii, Ji, Ki, Li;

function Mi() {
	return Jg.navigator ? Jg.navigator.userAgent : k
}

function Ni() {
	return Jg.navigator
}
Ji = Ii = Hi = Gi = m;
var Oi;
if (Oi = Mi()) {
	var Pi = Ni();
	Gi = 0 == Oi[cc]("Opera");
	Hi = !Gi && -1 != Oi[cc]("MSIE");
	Ii = !Gi && -1 != Oi[cc]("WebKit");
	Ji = !Gi && !Ii && "Gecko" == Pi.product
}
var Qi = Gi,
	U = Hi,
	Ri = Ji,
	Si = Ii,
	Ti = Ni(),
	Ui = Ti && Ti.platform || "";
Ki = wh(Ui, "Mac");
Li = wh(Ui, "Win");
var Vi = !! Ni() && wh(Ni().appVersion || "", "X11"),
	Wi;
a: {
	var Xi = "",
		Yi;
	if (Qi && Jg.opera) var Zi = Jg.opera.version,
	Xi = "function" == typeof Zi ? Zi() : Zi;
	else if (Ri ? Yi = /rv\:([^\);]+)(\)|;)/ : U ? Yi = /MSIE\s+([^\);]+)(\)|;)/ : Si && (Yi = /WebKit\/(\S+)/), Yi) var $i = Yi[Cb](Mi()),
	Xi = $i ? $i[1] : "";
	if (U) {
		var aj, bj = Jg[rd];
		aj = bj ? bj[de] : i;
		if (aj > pa(Xi)) {
			Wi = qa(aj);
			break a
		}
	}
	Wi = Xi
}
var cj = Wi,
	dj = {};

function ej(a) {
	var b;
	if (!(b = dj[a])) {
		b = 0;
		for (var c = lh(qa(cj))[td]("."), d = lh(qa(a))[td]("."), e = s.max(c[F], d[F]), g = 0; 0 == b && g < e; g++) {
			var h = c[g] || "",
				l = d[g] || "",
				r = va("(\\d*)(\\D*)", "g"),
				t = va("(\\d*)(\\D*)", "g");
			do {
				var y = r[Cb](h) || ["", "", ""],
					H = t[Cb](l) || ["", "", ""];
				if (0 == y[0][F] && 0 == H[0][F]) break;
				b = ((0 == y[1][F] ? 0 : oa(y[1], 10)) < (0 == H[1][F] ? 0 : oa(H[1], 10)) ? -1 : (0 == y[1][F] ? 0 : oa(y[1], 10)) > (0 == H[1][F] ? 0 : oa(H[1], 10)) ? 1 : 0) || ((0 == y[2][F]) < (0 == H[2][F]) ? -1 : (0 == y[2][F]) > (0 == H[2][F]) ? 1 : 0) || (y[2] < H[2] ? -1 : y[2] > H[2] ? 1 : 0)
			} while (0 ==
				b)
		}
		b = dj[a] = 0 <= b
	}
	return b
}
var fj = {};

function gj(a) {
	return fj[a] || (fj[a] = U && !! q[de] && q[de] >= a)
}

function hj(a, b, c) {
	c = c || Jg;
	var d = c.onerror,
		e = !! b;
	Si && !ej("535.3") && (e = !e);
	c.onerror = function (g, h, l) {
		d && d(g, h, l);
		a({
			message: g,
			fileName: h,
			by: l
		});
		return e
	}
}

function ij(a) {
	for (var b = [], c = arguments.callee.caller, d = 0; c && (!a || d < a);) {
		b[w](jj(c));
		b[w]("()\n");
		try {
			c = c.caller
		} catch (e) {
			b[w]("[exception trying to get caller]\n");
			break
		}
		d++;
		if (50 <= d) {
			b[w]("[...long stack...]");
			break
		}
	}
	a && d >= a ? b[w]("[...reached max depth limit...]") : b[w]("[end]");
	return b[N]("")
}

function jj(a) {
	if (kj[a]) return kj[a];
	a = qa(a);
	if (!kj[a]) {
		var b = /function ([^\(]+)/ [Cb](a);
		kj[a] = b ? b[1] : "[Anonymous]"
	}
	return kj[a]
}
var kj = {}, mj = [],
	nj = [],
	oj = m;

function pj(a) {
	mj[mj[F]] = a;
	if (oj)
		for (var b = 0; b < nj[F]; b++) a(P(nj[b].Wu, nj[b]))
}

function qj(a) {
	qj[" "](a);
	return a
}
qj[" "] = Ng;
var rj = !U || gj(9),
	sj = !U || gj(9),
	tj = U && !ej("9");
!Si || ej("528");
Ri && ej("1.9b") || U && ej("8") || Qi && ej("9.5") || Si && ej("528");
Ri && !ej("8") || U && ej("9");

function uj() {}
uj[G].he = m;
uj[G].s = function () {
	this.he || (this.he = j, this.i())
};
uj[G].i = function () {
	this.zj && vj[he](k, this.zj);
	if (this.Ss)
		for (; this.Ss[F];) this.Ss[zb]()()
};

function wj(a) {
	a && "function" == typeof a.s && a.s()
}

function vj(a) {
	for (var b = 0, c = arguments[F]; b < c; ++b) {
		var d = arguments[b];
		Rg(d) ? vj[he](k, d) : wj(d)
	}
}

function xj(a, b) {
	La(this, a);
	cb(this, b);
	Ba(this, this[K])
}
O = xj[G];
O.i = function () {};
O.s = function () {};
O.Nf = m;
O.qq = m;
O.Mk = j;
O.stopPropagation = function () {
	this.Nf = j
};
O.preventDefault = function () {
	this.qq = j;
	this.Mk = m
};

function yj(a) {
	a[Zb]()
}

function zj(a, b) {
	a && this.ta(a, b)
}
R(zj, xj);
var Aj = [1, 4, 2];
O = zj[G];
cb(O, k);
O.relatedTarget = k;
O.offsetX = 0;
O.offsetY = 0;
Pa(O, 0);
Qa(O, 0);
Da(O, 0);
Ea(O, 0);
O.button = 0;
Ia(O, 0);
O.charCode = 0;
O.ctrlKey = m;
Ua(O, m);
O.shiftKey = m;
Aa(O, m);
O.Yn = m;
O.ke = k;
O.ta = function (a, b) {
	var c = La(this, a[E]);
	xj[L](this, c);
	cb(this, a[K] || a.srcElement);
	Ba(this, b);
	var d = a[Ab];
	if (d) {
		if (Ri) {
			var e;
			a: {
				try {
					qj(d[fc]);
					e = j;
					break a
				} catch (g) {}
				e = m
			}
			e || (d = k)
		}
	} else "mouseover" == c ? d = a.fromElement : "mouseout" == c && (d = a.toElement);
	this.relatedTarget = d;
	this.offsetX = Si || a.offsetX !== i ? a.offsetX : a.layerX;
	this.offsetY = Si || a.offsetY !== i ? a.offsetY : a.layerY;
	Pa(this, a[Uc] !== i ? a[Uc] : a.pageX);
	Qa(this, a[Vc] !== i ? a[Vc] : a.pageY);
	Da(this, a[ic] || 0);
	Ea(this, a[jc] || 0);
	this.button = a.button;
	Ia(this, a[D] || 0);
	this.charCode = a[oc] || ("keypress" == c ? a[D] : 0);
	this.ctrlKey = a[sd];
	Ua(this, a[dd]);
	this.shiftKey = a[ie];
	Aa(this, a[dc]);
	this.Yn = Ki ? a[dc] : a[sd];
	this.state = a.state;
	this.ke = a;
	a.qq && this[Zb]();
	delete this.Nf
};

function Bj(a, b) {
	return rj ? a.ke.button == b : "click" == a[E] ? 0 == b : !! (a.ke.button & Aj[b])
}

function Cj(a) {
	return Bj(a, 0) && !(Si && Ki && a[sd])
}
O.stopPropagation = function () {
	zj.a[wd][L](this);
	this.ke[wd] ? this.ke[wd]() : this.ke.cancelBubble = j
};
O.preventDefault = function () {
	zj.a[Zb][L](this);
	var a = this.ke;
	if (a[Zb]) a[Zb]();
	else if (a.returnValue = m, tj) try {
		(a[sd] || 112 <= a[D] && 123 >= a[D]) && Ia(a, -1)
	} catch (b) {}
};
O.oe = function () {
	return this.ke
};
O.i = function () {};

function Dj() {}
var Ej = 0;
O = Dj[G];
O.key = 0;
O.Qf = m;
O.Il = m;
O.ta = function (a, b, c, d, e, g) {
	Ug(a) ? this.Rr = j : a && a[Cc] && Ug(a[Cc]) ? this.Rr = m : f(p("Invalid listener argument"));
	this.Mg = a;
	this.yt = b;
	this.src = c;
	La(this, d);
	this.Bh = !! e;
	this.Cg = g;
	this.Il = m;
	this.key = ++Ej;
	this.Qf = m
};
Ka(O, function (a) {
	return this.Rr ? this.Mg[L](this.Cg || this.src, a) : this.Mg[Cc][L](this.Mg, a)
});
var Fj = {}, Gj = {}, Hj = {}, Ij = {};

function V(a, b, c, d, e) {
	if (b) {
		if (Qg(b)) {
			for (var g = 0; g < b[F]; g++) V(a, b[g], c, d, e);
			return k
		}
		d = !! d;
		var h = Gj;
		b in h || (h[b] = {
			N: 0,
			nc: 0
		});
		h = h[b];
		d in h || (h[d] = {
			N: 0,
			nc: 0
		}, h.N++);
		var h = h[d],
			l = Wg(a),
			r;
		h.nc++;
		if (h[l]) {
			r = h[l];
			for (g = 0; g < r[F]; g++)
				if (h = r[g], h.Mg == c && h.Cg == e) {
					if (h.Qf) break;
					return r[g].key
				}
		} else r = h[l] = [], h.N++;
		g = Jj();
		g.src = a;
		h = new Dj;
		h.ta(c, g, a, b, d, e);
		c = h.key;
		g.key = c;
		r[w](h);
		Fj[c] = h;
		Hj[l] || (Hj[l] = []);
		Hj[l][w](h);
		a.addEventListener ? (a == Jg || !a.nq) && a.addEventListener(b, g, d) : a.attachEvent(b in Ij ? Ij[b] :
			Ij[b] = "on" + b, g);
		return c
	}
	f(p("Invalid event type"))
}

function Jj() {
	var a = Kj,
		b = sj ? function (c) {
			return a[L](b.src, b.key, c)
		} : function (c) {
			c = a[L](b.src, b.key, c);
			if (!c) return c
		};
	return b
}

function Lj(a, b, c, d, e) {
	if (Qg(b)) {
		for (var g = 0; g < b[F]; g++) Lj(a, b[g], c, d, e);
		return k
	}
	a = V(a, b, c, d, e);
	Fj[a].Il = j;
	return a
}

function Mj(a, b, c, d, e) {
	if (Qg(b)) {
		for (var g = 0; g < b[F]; g++) Mj(a, b[g], c, d, e);
		return k
	}
	d = !! d;
	a = Nj(a, b, d);
	if (!a) return m;
	for (g = 0; g < a[F]; g++)
		if (a[g].Mg == c && a[g].Bh == d && a[g].Cg == e) return Oj(a[g].key);
	return m
}

function Oj(a) {
	if (!Fj[a]) return m;
	var b = Fj[a];
	if (b.Qf) return m;
	var c = b.src,
		d = b[E],
		e = b.yt,
		g = b.Bh;
	c.removeEventListener ? (c == Jg || !c.nq) && c.removeEventListener(d, e, g) : c.detachEvent && c.detachEvent(d in Ij ? Ij[d] : Ij[d] = "on" + d, e);
	c = Wg(c);
	Hj[c] && (e = Hj[c], Lh(e, b), 0 == e[F] && delete Hj[c]);
	b.Qf = j;
	if (b = Gj[d][g][c]) b.Ms = j, Pj(d, g, c, b);
	delete Fj[a];
	return j
}

function Pj(a, b, c, d) {
	if (!d.pk && d.Ms) {
		for (var e = 0, g = 0; e < d[F]; e++) d[e].Qf ? d[e].yt.src = k : (e != g && (d[g] = d[e]), g++);
		Va(d, g);
		d.Ms = m;
		0 == g && (delete Gj[a][b][c], Gj[a][b].N--, 0 == Gj[a][b].N && (delete Gj[a][b], Gj[a].N--), 0 == Gj[a].N && delete Gj[a])
	}
}

function Qj(a, b, c) {
	var d = 0,
		e = b == k,
		g = c == k;
	c = !! c;
	if (a == k) gi(Hj, function (r) {
		for (var t = r[F] - 1; 0 <= t; t--) {
			var y = r[t];
			if ((e || b == y[E]) && (g || c == y.Bh)) Oj(y.key), d++
		}
	});
	else if (a = Wg(a), Hj[a]) {
		a = Hj[a];
		for (var h = a[F] - 1; 0 <= h; h--) {
			var l = a[h];
			if ((e || b == l[E]) && (g || c == l.Bh)) Oj(l.key), d++
		}
	}
	return d
}

function Nj(a, b, c) {
	var d = Gj;
	return b in d && (d = d[b], c in d && (d = d[c], a = Wg(a), d[a])) ? d[a] : k
}

function Rj(a, b, c, d, e) {
	var g = 1;
	b = Wg(b);
	if (a[b]) {
		a.nc--;
		a = a[b];
		a.pk ? a.pk++ : a.pk = 1;
		try {
			for (var h = a[F], l = 0; l < h; l++) {
				var r = a[l];
				r && !r.Qf && (g &= Sj(r, e) !== m)
			}
		} finally {
			a.pk--, Pj(c, d, b, a)
		}
	}
	return ma(g)
}

function Sj(a, b) {
	a.Il && Oj(a.key);
	return a[Cc](b)
}

function Kj(a, b) {
	if (!Fj[a]) return j;
	var c = Fj[a],
		d = c[E],
		e = Gj;
	if (!(d in e)) return j;
	var e = e[d],
		g, h;
	if (!sj) {
		g = b || Mg("window.event");
		var l = j in e,
			r = m in e;
		if (l) {
			if (0 > g[D] || g.returnValue != i) return j;
			a: {
				var t = m;
				if (0 == g[D]) try {
					Ia(g, -1);
					break a
				} catch (y) {
					t = j
				}
				if (t || g.returnValue == i) g.returnValue = j
			}
		}
		t = new zj;
		t.ta(g, this);
		g = j;
		try {
			if (l) {
				for (var H = [], Ha = t[gc]; Ha; Ha = Ha[oe]) H[w](Ha);
				h = e[j];
				h.nc = h.N;
				for (var ga = H[F] - 1; !t.Nf && 0 <= ga && h.nc; ga--) Ba(t, H[ga]), g &= Rj(h, H[ga], d, j, t);
				if (r) {
					h = e[m];
					h.nc = h.N;
					for (ga = 0; !t.Nf && ga <
						H[F] && h.nc; ga++) Ba(t, H[ga]), g &= Rj(h, H[ga], d, m, t)
				}
			} else g = Sj(c, t)
		} finally {
			H && Va(H, 0)
		}
		return g
	}
	d = new zj(b, this);
	return g = Sj(c, d)
}
var Tj = 0;
pj(function (a) {
	Kj = a(Kj)
});
var Uj = va("^(?:([^:/?#.]+):)?(?://(?:([^/?#]*)@)?([\\w\\d\\-\\u0100-\\uffff.%]*)(?::([0-9]+))?)?([^?#]+)?(?:\\?([^#]*))?(?:#(.*))?$");

function Vj(a) {
	if (Wj) {
		Wj = m;
		var b = Jg[yd];
		if (b) {
			var c = b[ae];
			if (c && (c = Xj(Vj(c)[3] || k)) && c != b.hostname) Wj = j, f(p())
		}
	}
	return a[kc](Uj)
}
var Wj = Si;

function Xj(a) {
	return a && sa(a)
}

function Yj(a) {
	if (a[1]) {
		var b = a[0],
			c = b[cc]("#");
		0 <= c && (a[w](b[Xc](c)), a[0] = b = b[Xc](0, c));
		c = b[cc]("?");
		0 > c ? a[1] = "?" : c == b[F] - 1 && (a[1] = i)
	}
	return a[N]("")
}

function Zj(a, b, c) {
	if (Qg(b))
		for (var d = 0; d < b[F]; d++) Zj(a, qa(b[d]), c);
	else b != k && c[w]("&", a, "" === b ? "" : "=", nh(b))
}

function $j(a, b, c) {
	s.max(b[F] - (c || 0), 0);
	for (c = c || 0; c < b[F]; c += 2) Zj(b[c], b[c + 1], a);
	return a
}

function ak(a, b) {
	return Yj(2 == arguments[F] ? $j([a], arguments[1], 0) : $j([a], arguments, 1))
}

function bk(a, b, c) {
	return Yj([a, "&", b, "=", nh(c)])
}
var ck = /#|$/;

function dk(a, b) {
	var c = a[Kd](ck),
		d;
	a: {
		d = 0;
		for (var e = b[F]; 0 <= (d = a[cc](b, d)) && d < c;) {
			var g = a[Xd](d - 1);
			if (38 == g || 63 == g)
				if (g = a[Xd](d + e), !g || 61 == g || 38 == g || 35 == g) break a;
			d += e + 1
		}
		d = -1
	}
	if (0 > d) return k;
	e = a[cc]("&", d);
	if (0 > e || e > c) e = c;
	d += b[F] + 1;
	return oh(a[Xc](d, e - d))
}

function ek(a, b) {
	this.x = Lg(a) ? a : 0;
	this.y = Lg(b) ? b : 0
}
ek[G].Na = function () {
	return new ek(this.x, this.y)
};

function fk(a, b) {
	return new ek(a.x - b.x, a.y - b.y)
}

function gk(a, b) {
	xa(this, a);
	pb(this, b)
}

function hk(a, b) {
	return a == b ? j : !a || !b ? m : a[x] == b[x] && a[M] == b[M]
}
O = gk[G];
O.Na = function () {
	return new gk(this[x], this[M])
};
O.Gf = function () {
	return !(this[x] * this[M])
};
O.ceil = function () {
	xa(this, s[Lb](this[x]));
	pb(this, s[Lb](this[M]));
	return this
};
O.floor = function () {
	xa(this, s[Nb](this[x]));
	pb(this, s[Nb](this[M]));
	return this
};
O.round = function () {
	xa(this, s[Gb](this[x]));
	pb(this, s[Gb](this[M]));
	return this
};
O.scale = function (a) {
	xa(this, this[x] * a);
	pb(this, this[M] * a);
	return this
};
var ik = !U || gj(9),
	jk = !Ri && !U || U && gj(9) || Ri && ej("1.9.1"),
	kk = U && !ej("9"),
	lk = U;

function mk(a) {
	return a ? new nk(ok(a)) : Th || (Th = new nk)
}

function pk(a) {
	return Sg(a) ? q[Pb](a) : a
}
var qk = pk;

function rk(a, b, c) {
	return sk(q, a, b, c)
}

function sk(a, b, c, d) {
	a = d || a;
	b = b && "*" != b ? b.toUpperCase() : "";
	if (a.querySelectorAll && a.querySelector && (b || c)) return a.querySelectorAll(b + (c ? "." + c : ""));
	if (c && a.getElementsByClassName) {
		a = a.getElementsByClassName(c);
		if (b) {
			d = {};
			for (var e = 0, g = 0, h; h = a[g]; g++) b == h[fc] && (d[e++] = h);
			Va(d, e);
			return d
		}
		return a
	}
	a = a[Tc](b || "*");
	if (c) {
		d = {};
		for (g = e = 0; h = a[g]; g++) b = h[ld], "function" == typeof b[td] && Kh(b[td](/\s+/), c) && (d[e++] = h);
		Va(d, e);
		return d
	}
	return a
}
var tk = rk;

function uk(a, b) {
	gi(b, function (c, d) {
		"style" == d ? Ga(a[I], c) : "class" == d ? Ya(a, c) : "for" == d ? a.htmlFor = c : d in vk ? a[zc](vk[d], c) : eh(d, "aria-") || eh(d, "data-") ? a[zc](d, c) : a[d] = c
	})
}
var vk = {
	cellpadding: "cellPadding",
	cellspacing: "cellSpacing",
	colspan: "colSpan",
	frameborder: "frameBorder",
	height: "height",
	maxlength: "maxLength",
	role: "role",
	rowspan: "rowSpan",
	type: "type",
	usemap: "useMap",
	valign: "vAlign",
	width: "width"
};

function wk(a) {
	a = (a || n)[rd][Wc];
	return new gk(a[nd], a[Vd])
}

function xk(a) {
	return a ? a.parentWindow || a[Jc] : n
}

function yk(a, b, c) {
	return zk(q, arguments)
}

function zk(a, b) {
	var c = b[0],
		d = b[1];
	if (!ik && d && (d[Lc] || d[E])) {
		c = ["<", c];
		d[Lc] && c[w](' name="', ph(d[Lc]), '"');
		if (d[E]) {
			c[w](' type="', ph(d[E]), '"');
			var e = {};
			ri(e, d);
			delete e[E];
			d = e
		}
		c[w](">");
		c = c[N]("")
	}
	c = a[rc](c);
	d && (Sg(d) ? Ya(c, d) : Qg(d) ? S[he](k, [c][Sb](d)) : uk(c, d));
	2 < b[F] && Ak(a, c, b, 2);
	return c
}

function Ak(a, b, c, d) {
	function e(h) {
		h && b[v](Sg(h) ? a[Vb](h) : h)
	}
	for (; d < c[F]; d++) {
		var g = c[d];
		Rg(g) && !(Vg(g) && 0 < g[Ib]) ? Fh(Bk(g) ? Oh(g) : g, e) : e(g)
	}
}
var Ck = yk;

function Dk(a, b) {
	Ak(ok(a), a, arguments, 1)
}

function Ek(a) {
	for (var b; b = a[uc];) a[Hd](b)
}

function Fk(a, b) {
	b[oe] && b[oe][$b](a, b)
}

function Gk(a, b) {
	b[oe] && b[oe][$b](a, b[Oc])
}

function Hk(a) {
	return a && a[oe] ? a[oe][Hd](a) : k
}

function Ik(a, b) {
	var c = b[oe];
	c && c[Bb](a, b)
}

function Jk(a) {
	if (a.Ow != i) a = a.Ow;
	else
		for (a = a[uc]; a && 1 != a[Ib];) a = a[Oc];
	return a
}

function Kk(a, b) {
	if (a[ge] && 1 == b[Ib]) return a == b || a[ge](b);
	if ("undefined" != typeof a.compareDocumentPosition) return a == b || ma(a.compareDocumentPosition(b) & 16);
	for (; b && a != b;) b = b[oe];
	return b == a
}

function ok(a) {
	return 9 == a[Ib] ? a : a[Gd] || a[rd]
}

function Lk(a, b) {
	if ("textContent" in a) a.textContent = b;
	else if (a[uc] && 3 == a[uc][Ib]) {
		for (; a[Ld] != a[uc];) a[Hd](a[Ld]);
		a[uc].data = b
	} else Ek(a), a[v](ok(a)[Vb](b))
}

function Mk(a) {
	if ("outerHTML" in a) return a.outerHTML;
	var b = ok(a)[rc]("div");
	b[v](a.cloneNode(j));
	return b[Qb]
}
var Nk = {
	SCRIPT: 1,
	STYLE: 1,
	HEAD: 1,
	IFRAME: 1,
	OBJECT: 1
}, Ok = {
		IMG: " ",
		BR: "\n"
	};

function Pk(a) {
	var b = a.getAttributeNode("tabindex");
	return b && b.specified ? (a = a.tabIndex, Tg(a) && 0 <= a && 32768 > a) : m
}

function Qk(a, b) {
	b ? Ma(a, 0) : (Ma(a, -1), a.removeAttribute("tabIndex"))
}

function Rk(a) {
	if (kk && "innerText" in a) a = a.innerText[z](/(\r\n|\r|\n)/g, "\n");
	else {
		var b = [];
		Sk(a, b, j);
		a = b[N]("")
	}
	a = a[z](/ \xAD /g, " ")[z](/\xAD/g, "");
	a = a[z](/\u200B/g, "");
	kk || (a = a[z](/ +/g, " "));
	" " != a && (a = a[z](/^\s*/, ""));
	return a
}

function Tk(a) {
	var b = [];
	Sk(a, b, m);
	return b[N]("")
}

function Sk(a, b, c) {
	if (!(a[fc] in Nk))
		if (3 == a[Ib]) c ? b[w](qa(a[Ae])[z](/(\r\n|\r|\n)/g, "")) : b[w](a[Ae]);
		else if (a[fc] in Ok) b[w](Ok[a[fc]]);
	else
		for (a = a[uc]; a;) Sk(a, b, c), a = a[Oc]
}

function Bk(a) {
	if (a && "number" == typeof a[F]) {
		if (Vg(a)) return "function" == typeof a.item || "string" == typeof a.item;
		if (Ug(a)) return "function" == typeof a.item
	}
	return m
}

function Uk(a) {
	try {
		return a && a[tb]
	} catch (b) {}
	return k
}

function nk(a) {
	this.V = a || Jg[rd] || q
}
O = nk[G];
O.v = mk;

function Vk(a) {
	return a.V
}
O.b = function (a) {
	return Sg(a) ? this.V[Pb](a) : a
};
O.k = function (a, b, c) {
	return zk(this.V, arguments)
};
O.ol = nk[G].k;
O.createElement = function (a) {
	return this.V[rc](a)
};
O.createTextNode = function (a) {
	return this.V[Vb](a)
};

function Wk(a) {
	return a.V.parentWindow || a.V[Jc]
}

function Xk(a) {
	var b = a.V;
	a = !Si ? b[Wc] : b[J];
	b = b.parentWindow || b[Jc];
	return new ek(b.pageXOffset || a[Wd], b.pageYOffset || a[Zc])
}
O.appendChild = function (a, b) {
	a[v](b)
};
O.append = Dk;
O.co = Ek;
O.Jr = Fk;
O.removeNode = Hk;
O.Hd = function (a) {
	return jk && a[tc] != i ? a[tc] : Gh(a[Hc], function (b) {
		return 1 == b[Ib]
	})
};
O.Wq = Jk;
kb(O, Kk);

function Yk(a, b, c, d) {
	this.top = a;
	qb(this, b);
	ib(this, c);
	Ca(this, d)
}
Yk[G].Na = function () {
	return new Yk(this.top, this[Ce], this[Zd], this[B])
};
kb(Yk[G], function (a) {
	return !this || !a ? m : a instanceof Yk ? a[B] >= this[B] && a[Ce] <= this[Ce] && a.top >= this.top && a[Zd] <= this[Zd] : a.x >= this[B] && a.x <= this[Ce] && a.y >= this.top && a.y <= this[Zd]
});
ya(Yk[G], function (a, b, c, d) {
	Vg(a) ? (this.top -= a.top, qb(this, this[Ce] + a[Ce]), ib(this, this[Zd] + a[Zd]), Ca(this, this[B] - a[B])) : (this.top -= a, qb(this, this[Ce] + b), ib(this, this[Zd] + c), Ca(this, this[B] - d));
	return this
});

function Zk(a, b, c, d) {
	Ca(this, a);
	this.top = b;
	xa(this, c);
	pb(this, d)
}
Zk[G].Na = function () {
	return new Zk(this[B], this.top, this[x], this[M])
};
Zk[G].Vm = function (a) {
	var b = s.max(this[B], a[B]),
		c = s.min(this[B] + this[x], a[B] + a[x]);
	if (b <= c) {
		var d = s.max(this.top, a.top);
		a = s.min(this.top + this[M], a.top + a[M]);
		if (d <= a) return Ca(this, b), this.top = d, xa(this, c - b), pb(this, a - d), j
	}
	return m
};
kb(Zk[G], function (a) {
	return a instanceof Zk ? this[B] <= a[B] && this[B] + this[x] >= a[B] + a[x] && this.top <= a.top && this.top + this[M] >= a.top + a[M] : a.x >= this[B] && a.x <= this[B] + this[x] && a.y >= this.top && a.y <= this.top + this[M]
});
Zk[G].Zq = function () {
	return new gk(this[x], this[M])
};

function $k(a, b, c) {
	Sg(b) ? al(a, c, b) : gi(b, Q(al, a))
}

function al(a, b, c) {
	a[I][Ch(c)] = b
}

function bl(a, b) {
	var c = ok(a);
	return c[Jc] && c[Jc].getComputedStyle && (c = c[Jc].getComputedStyle(a, k)) ? c[b] || c.getPropertyValue(b) || "" : ""
}

function cl(a, b) {
	return bl(a, b) || (a[$d] ? a[$d][b] : k) || a[I] && a[I][b]
}

function dl(a) {
	return cl(a, "position")
}

function el(a, b, c) {
	var d, e = Ri && (Ki || Vi) && ej("1.9");
	b instanceof ek ? (d = b.x, b = b.y) : (d = b, b = c);
	Ca(a[I], fl(d, e));
	a[I].top = fl(b, e)
}

function gl(a) {
	a = a ? ok(a) : q;
	var b;
	if (b = U)
		if (b = !gj(9)) mk(a), b = m;
	return b ? a[J] : a[Wc]
}

function hl(a) {
	var b = a[ub]();
	U && (a = a[Gd], Ca(b, b[B] - (a[Wc][yc] + a[J][yc])), b.top -= a[Wc][Ac] + a[J][Ac]);
	return b
}

function il(a) {
	if (U && !gj(8)) return a[ud];
	var b = ok(a),
		c = cl(a, "position"),
		d = "fixed" == c || "absolute" == c;
	for (a = a[oe]; a && a != b; a = a[oe])
		if (c = cl(a, "position"), d = d && "static" == c && a != b[Wc] && a != b[J], !d && (a[Od] > a[nd] || a[sc] > a[Vd] || "fixed" == c || "absolute" == c || "relative" == c)) return a;
	return k
}

function jl(a) {
	for (var b = new Yk(0, la, la, 0), c = mk(a), d = c.V[J], e = c.V[Wc], g = !Si ? c.V[Wc] : c.V[J]; a = il(a);)
		if ((!U || 0 != a[nd]) && (!Si || 0 != a[Vd] || a != d) && a != d && a != e && "visible" != cl(a, "overflow")) {
			var h = kl(a),
				l;
			l = a;
			if (Ri && !ej("1.9")) {
				var r = pa(bl(l, "borderLeftWidth"));
				if (ll(l)) var t = l[Rb] - l[nd] - r - pa(bl(l, "borderRightWidth")),
				r = r + t;
				l = new ek(r, pa(bl(l, "borderTopWidth")))
			} else l = new ek(l[yc], l[Ac]);
			h.x += l.x;
			h.y += l.y;
			b.top = s.max(b.top, h.y);
			qb(b, s.min(b[Ce], h.x + a[nd]));
			ib(b, s.min(b[Zd], h.y + a[Vd]));
			Ca(b, s.max(b[B], h.x))
		}
	d =
		g[Wd];
	g = g[Zc];
	Ca(b, s.max(b[B], d));
	b.top = s.max(b.top, g);
	c = wk(Wk(c));
	qb(b, s.min(b[Ce], d + c[x]));
	ib(b, s.min(b[Zd], g + c[M]));
	return 0 <= b.top && 0 <= b[B] && b[Zd] > b.top && b[Ce] > b[B] ? b : k
}

function ml(a, b, c) {
	var d = kl(a),
		e = kl(b),
		g = nl(b),
		h = d.x - e.x - g[B],
		d = d.y - e.y - g.top,
		e = b[nd] - a[Rb];
	a = b[Vd] - a[xe];
	g = b[Wd];
	b = b[Zc];
	c ? (g += h - e / 2, b += d - a / 2) : (g += s.min(h, s.max(h - e, 0)), b += s.min(d, s.max(d - a, 0)));
	return new ek(g, b)
}

function kl(a) {
	var b, c = ok(a),
		d = cl(a, "position"),
		e = Ri && c[mc] && !a[ub] && "absolute" == d && (b = c[mc](a)) && (0 > b[ic] || 0 > b[jc]),
		g = new ek(0, 0),
		h = gl(c);
	if (a == h) return g;
	if (a[ub]) b = hl(a), a = Xk(mk(c)), g.x = b[B] + a.x, g.y = b.top + a.y;
	else if (c[mc] && !e) b = c[mc](a), a = c[mc](h), g.x = b[ic] - a[ic], g.y = b[jc] - a[jc];
	else {
		b = a;
		do {
			g.x += b[Cd];
			g.y += b[ue];
			b != a && (g.x += b[yc] || 0, g.y += b[Ac] || 0);
			if (Si && "fixed" == dl(b)) {
				g.x += c[J][Wd];
				g.y += c[J][Zc];
				break
			}
			b = b[ud]
		} while (b && b != a);
		if (Qi || Si && "absolute" == d) g.y -= c[J][ue];
		for (b = a;
			(b = il(b)) && b != c[J] &&
			b != h;)
			if (g.x -= b[Wd], !Qi || "TR" != b[je]) g.y -= b[Zc]
	}
	return g
}

function ol(a) {
	var b = new ek;
	if (1 == a[Ib]) {
		if (a[ub]) {
			var c = hl(a);
			b.x = c[B];
			b.y = c.top
		} else {
			var c = Xk(mk(a)),
				d = kl(a);
			b.x = d.x - c.x;
			b.y = d.y - c.y
		} if (Ri && !ej(12)) {
			var e;
			U ? e = "-ms-transform" : Si ? e = "-webkit-transform" : Qi ? e = "-o-transform" : Ri && (e = "-moz-transform");
			var g;
			e && (g = cl(a, e));
			g || (g = cl(a, "transform"));
			g ? (a = g[kc](pl), a = !a ? new ek(0, 0) : new ek(pa(a[1]), pa(a[2]))) : a = new ek(0, 0);
			b = new ek(b.x + a.x, b.y + a.y)
		}
	} else e = Ug(a.oe), g = a, a[bc] ? g = a[bc][0] : e && a.oe()[bc] && (g = a.oe()[bc][0]), b.x = g[Uc], b.y = g[Vc];
	return b
}

function ql(a, b, c) {
	var d = kl(a);
	b instanceof ek && (c = b.y, b = b.x);
	el(a, a[Cd] + (b - d.x), a[ue] + (c - d.y))
}

function rl(a, b, c) {
	b instanceof gk ? (c = b[M], b = b[x]) : c == i && f(p("missing height argument"));
	xa(a[I], fl(b, j));
	sl(a, c)
}

function fl(a, b) {
	"number" == typeof a && (a = (b ? s[Gb](a) : a) + "px");
	return a
}

function sl(a, b) {
	pb(a[I], fl(b, j))
}

function tl(a) {
	if ("none" != cl(a, "display")) return ul(a);
	var b = a[I],
		c = b[re],
		d = b.visibility,
		e = b.position;
	Ra(b, "hidden");
	Xa(b, "absolute");
	ob(b, "inline");
	a = ul(a);
	ob(b, c);
	Xa(b, e);
	Ra(b, d);
	return a
}

function ul(a) {
	var b = a[Rb],
		c = a[xe],
		d = Si && !b && !c;
	return (!Lg(b) || d) && a[ub] ? (a = hl(a), new gk(a[Ce] - a[B], a[Zd] - a.top)) : new gk(b, c)
}

function vl(a) {
	var b = kl(a);
	a = tl(a);
	return new Zk(b.x, b.y, a[x], a[M])
}

function wl(a, b) {
	var c = a[I];
	"opacity" in c ? $a(c, b) : "MozOpacity" in c ? c.MozOpacity = b : "filter" in c && (c.filter = "" === b ? "" : "alpha(opacity=" + 100 * b + ")")
}

function xl(a, b) {
	ob(a[I], b ? "" : "none")
}

function ll(a) {
	return "rtl" == cl(a, "direction")
}
var yl = Ri ? "MozUserSelect" : Si ? "WebkitUserSelect" : k;

function zl(a, b, c) {
	c = !c ? a[Tc]("*") : k;
	if (yl) {
		if (b = b ? "none" : "", a[I][yl] = b, c) {
			a = 0;
			for (var d; d = c[a]; a++) d[I][yl] = b
		}
	} else if (U || Qi)
		if (b = b ? "on" : "", a[zc]("unselectable", b), c)
			for (a = 0; d = c[a]; a++) d[zc]("unselectable", b)
}

function Al(a, b, c, d) {
	if (/^\d+px?$/ [yb](b)) return oa(b, 10);
	var e = a[I][c],
		g = a.runtimeStyle[c];
	a.runtimeStyle[c] = a[$d][c];
	a[I][c] = b;
	b = a[I][d];
	a[I][c] = e;
	a.runtimeStyle[c] = g;
	return b
}

function Bl(a, b) {
	return Al(a, a[$d] ? a[$d][b] : k, "left", "pixelLeft")
}

function Cl(a, b) {
	if (U) {
		var c = Bl(a, b + "Left"),
			d = Bl(a, b + "Right"),
			e = Bl(a, b + "Top"),
			g = Bl(a, b + "Bottom");
		return new Yk(e, d, g, c)
	}
	c = bl(a, b + "Left");
	d = bl(a, b + "Right");
	e = bl(a, b + "Top");
	g = bl(a, b + "Bottom");
	return new Yk(pa(e), pa(d), pa(g), pa(c))
}
var Dl = {
	thin: 2,
	medium: 4,
	thick: 6
};

function El(a, b) {
	if ("none" == (a[$d] ? a[$d][b + "Style"] : k)) return 0;
	var c = a[$d] ? a[$d][b + "Width"] : k;
	return c in Dl ? Dl[c] : Al(a, c, "left", "pixelLeft")
}

function nl(a) {
	if (U) {
		var b = El(a, "borderLeft"),
			c = El(a, "borderRight"),
			d = El(a, "borderTop");
		a = El(a, "borderBottom");
		return new Yk(d, c, a, b)
	}
	b = bl(a, "borderLeftWidth");
	c = bl(a, "borderRightWidth");
	d = bl(a, "borderTopWidth");
	a = bl(a, "borderBottomWidth");
	return new Yk(pa(d), pa(c), pa(a), pa(b))
}
var pl = /matrix\([0-9\.\-]+, [0-9\.\-]+, [0-9\.\-]+, [0-9\.\-]+, ([0-9\.\-]+)p?x?, ([0-9\.\-]+)p?x?\)/;

function Fl() {}
R(Fl, uj);
O = Fl[G];
O.nq = j;
O.Zg = k;
O.Go = function (a) {
	this.Zg = a
};
O.addEventListener = function (a, b, c, d) {
	V(this, a, b, c, d)
};
O.removeEventListener = function (a, b, c, d) {
	Mj(this, a, b, c, d)
};
O.dispatchEvent = function (a) {
	var b = a[E] || a,
		c = Gj;
	if (b in c) {
		if (Sg(a)) a = new xj(a, this);
		else if (a instanceof xj) cb(a, a[K] || this);
		else {
			var d = a;
			a = new xj(b, this);
			ri(a, d)
		}
		var d = 1,
			e, c = c[b],
			b = j in c,
			g;
		if (b) {
			e = [];
			for (g = this; g; g = g.Zg) e[w](g);
			g = c[j];
			g.nc = g.N;
			for (var h = e[F] - 1; !a.Nf && 0 <= h && g.nc; h--) Ba(a, e[h]), d &= Rj(g, e[h], a[E], j, a) && a.Mk != m
		}
		if (m in c)
			if (g = c[m], g.nc = g.N, b)
				for (h = 0; !a.Nf && h < e[F] && g.nc; h++) Ba(a, e[h]), d &= Rj(g, e[h], a[E], m, a) && a.Mk != m;
			else
				for (e = this; !a.Nf && e && g.nc; e = e.Zg) Ba(a, e), d &= Rj(g, e, a[E], m, a) &&
					a.Mk != m;
		a = ma(d)
	} else a = j;
	return a
};
O.i = function () {
	Fl.a.i[L](this);
	Qj(this);
	this.Zg = k
};

function Gl(a, b) {
	this.Ff = a || 1;
	this.Wi = b || Hl;
	this.Fl = P(this.HA, this);
	this.An = ah()
}
R(Gl, Fl);
Gl[G].Sc = m;
var Hl = Jg.window;
O = Gl[G];
O.R = k;
O.setInterval = function (a) {
	this.Ff = a;
	this.R && this.Sc ? (this[ad](), this[Qd]()) : this.R && this[ad]()
};
O.HA = function () {
	if (this.Sc) {
		var a = ah() - this.An;
		0 < a && a < 0.8 * this.Ff ? this.R = this.Wi[qd](this.Fl, this.Ff - a) : (this[A]("tick"), this.Sc && (this.R = this.Wi[qd](this.Fl, this.Ff), this.An = ah()))
	}
};
O.start = function () {
	this.Sc = j;
	this.R || (this.R = this.Wi[qd](this.Fl, this.Ff), this.An = ah())
};
O.stop = function () {
	this.Sc = m;
	this.R && (this.Wi[Db](this.R), this.R = k)
};
O.i = function () {
	Gl.a.i[L](this);
	this[ad]();
	delete this.Wi
};

function Il(a, b, c) {
	Ug(a) ? c && (a = P(a, c)) : a && "function" == typeof a[Cc] ? a = P(a[Cc], a) : f(p("Invalid listener argument"));
	return 2147483647 < b ? -1 : Hl[qd](a, b || 0)
}

function Jl(a) {
	this.T = a;
	this.ja = []
}
R(Jl, uj);
var Kl = [];
O = Jl[G];
O.j = function (a, b, c, d, e) {
	Qg(b) || (Kl[0] = b, b = Kl);
	for (var g = 0; g < b[F]; g++) {
		var h = V(a, b[g], c || this, d || m, e || this.T || this);
		this.ja[w](h)
	}
	return this
};

function Ll(a, b, c, d, e, g) {
	if (Qg(c))
		for (var h = 0; h < c[F]; h++) Ll(a, b, c[h], d, e, g);
	else b = Lj(b, c, d || a, e, g || a.T || a), a.ja[w](b);
	return a
}
O.pa = function (a, b, c, d, e) {
	if (Qg(b))
		for (var g = 0; g < b[F]; g++) this.pa(a, b[g], c, d, e);
	else {
		a: {
			c = c || this;
			e = e || this.T || this;
			d = !! d;
			if (a = Nj(a, b, d))
				for (b = 0; b < a[F]; b++)
					if (!a[b].Qf && a[b].Mg == c && a[b].Bh == d && a[b].Cg == e) {
						a = a[b];
						break a
					}
			a = k
		}
		a && (a = a.key, Oj(a), Lh(this.ja, a))
	}
	return this
};
O.Qd = function () {
	Fh(this.ja, Oj);
	Va(this.ja, 0)
};
O.i = function () {
	Jl.a.i[L](this);
	this.Qd()
};
Ka(O, function () {
	f(p("EventHandler.handleEvent not implemented"))
});

function Ml() {}
Og(Ml);
Ml[G].vy = 0;

function Nl(a) {
	return ":" + (a.vy++)[bd](36)
}
Ml.fa();

function Ol(a) {
	this.Y = a || mk();
	this.Jc = Pl
}
R(Ol, Fl);
Ol[G].Cx = Ml.fa();
var Pl = k;

function Ql(a, b) {
	switch (a) {
	case 1:
		return b ? "disable" : "enable";
	case 2:
		return b ? "highlight" : "unhighlight";
	case 4:
		return b ? "activate" : "deactivate";
	case 8:
		return b ? "select" : "unselect";
	case 16:
		return b ? "check" : "uncheck";
	case 32:
		return b ? "focus" : "blur";
	case 64:
		return b ? "open" : "close"
	}
	f(p("Invalid component state"))
}
O = Ol[G];
O.Q = k;
O.P = m;
O.e = k;
O.Jc = k;
O.oi = k;
O.G = k;
O.la = k;
O.Ya = k;
O.Tu = m;
bb(O, function () {
	return this.Q || (this.Q = Nl(this.Cx))
});

function Rl(a, b) {
	a.G && a.G.Ya && (ni(a.G.Ya, a.Q), oi(a.G.Ya, b, a));
	a.Q = b
}
O.b = function () {
	return this.e
};
O.getHandler = function () {
	return this.zg || (this.zg = new Jl(this))
};
O.Te = function (a) {
	this == a && f(p("Unable to set parent component"));
	a && (this.G && this.Q && this.G.Ya && this.Q && (this.Q in this.G.Ya && this.G.Ya[this.Q]) && this.G != a) && f(p("Unable to set parent component"));
	this.G = a;
	Ol.a.Go[L](this, a)
};
O.getParent = function () {
	return this.G
};
O.Go = function (a) {
	this.G && this.G != a && f(p("Method not supported"));
	Ol.a.Go[L](this, a)
};
O.v = function () {
	return this.Y
};
O.k = function () {
	this.e = this.Y[rc]("div")
};
O.oa = function (a) {
	Sl(this, a)
};

function Sl(a, b, c) {
	a.P && f(p("Component already rendered"));
	a.e || a.k();
	b ? b[$b](a.e, c || k) : a.Y.V[J][v](a.e);
	(!a.G || a.G.P) && a.Z()
}
O.I = function (a) {
	this.P && f(p("Component already rendered"));
	if (a && this.Tb(a)) {
		this.Tu = j;
		if (!this.Y || this.Y.V != ok(a)) this.Y = mk(a);
		this.xb(a);
		this.Z()
	} else f(p("Invalid element to decorate"))
};
O.Tb = function () {
	return j
};
O.xb = function (a) {
	this.e = a
};
O.Z = function () {
	this.P = j;
	Tl(this, function (a) {
		!a.P && a.b() && a.Z()
	})
};
O.Oa = function () {
	Tl(this, function (a) {
		a.P && a.Oa()
	});
	this.zg && this.zg.Qd();
	this.P = m
};
O.i = function () {
	Ol.a.i[L](this);
	this.P && this.Oa();
	this.zg && (this.zg.s(), delete this.zg);
	Tl(this, function (a) {
		a.s()
	});
	!this.Tu && this.e && Hk(this.e);
	this.G = this.oi = this.e = this.Ya = this.la = k
};
O.Ea = function (a, b) {
	this.ig(a, Ul(this), b)
};
O.ig = function (a, b, c) {
	a.P && (c || !this.P) && f(p("Component already rendered"));
	(0 > b || b > Ul(this)) && f(p("Child component index out of bounds"));
	if (!this.Ya || !this.la) this.Ya = {}, this.la = [];
	if (a[vb]() == this) {
		var d = a[Id]();
		this.Ya[d] = a;
		Lh(this.la, a)
	} else oi(this.Ya, a[Id](), a);
	a.Te(this);
	Qh(this.la, b, 0, a);
	a.P && this.P && a[vb]() == this ? (c = this.O(), c[$b](a.b(), c[Hc][b] || k)) : c ? (this.e || this.k(), b = Vl(this, b + 1), Sl(a, this.O(), b ? b.e : k)) : this.P && (!a.P && a.e && a.e[oe] && 1 == a.e[oe][Ib]) && a.Z()
};
O.O = function () {
	return this.e
};
O.Fe = function () {
	this.Jc == k && (this.Jc = ll(this.P ? this.e : this.Y.V[J]));
	return this.Jc
};
O.kh = function (a) {
	this.P && f(p("Component already rendered"));
	this.Jc = a
};

function Ul(a) {
	return a.la ? a.la[F] : 0
}

function Vl(a, b) {
	return a.la ? a.la[b] || k : k
}

function Tl(a, b, c) {
	a.la && Fh(a.la, b, c)
}

function Wl(a, b) {
	return a.la && b ? Eh(a.la, b) : -1
}
O.removeChild = function (a, b) {
	if (a) {
		var c = Sg(a) ? a : a[Id]();
		a = this.Ya && c ? (c in this.Ya ? this.Ya[c] : i) || k : k;
		c && a && (ni(this.Ya, c), Lh(this.la, a), b && (a.Oa(), a.e && Hk(a.e)), a.Te(k))
	}
	a || f(p("Child is not in parent component"));
	return a
};

function Xl(a, b, c) {
	return a[Hd](Vl(a, b), c)
}
O.co = function (a) {
	for (var b = []; this.la && 0 != this.la[F];) b[w](Xl(this, 0, a));
	return b
};

function Yl() {
	this.H = "none"
}
R(Yl, Fl);
Yl[G].wa = function (a) {
	this.H != a && (this.H = a, this[A]("change"))
};
Yl[G].ue = function () {
	return this.H
};

function Zl(a, b) {
	Ol[L](this, b);
	this.Zk = a
}
R(Zl, Ol);
var $l = {
	LB: 0,
	HB: 1,
	CB: 2,
	DB: 3
};
O = Zl[G];
O.Ud = 0;
O.k = function () {
	Zl.a.k[L](this);
	var a = this.v();
	this.gq = a.k("div");
	this.ur = a.k("div", "jfk-activityIndicator-icon");
	var b = ["jfk-activityIndicator"];
	1 == this.Ud && b[w]("jfk-activityIndicator-small");
	this.e = a.k("div", b, this.gq, this.ur)
};
O.O = function () {
	return this.gq
};
O.Z = function () {
	Zl.a.Z[L](this);
	this[fd]().j(this.Zk, "change", this.Mt)
};
O.Mt = function () {
	if (!this.xn || this.xn.complete) {
		this.co(j);
		var a, b = a = "#fff",
			c = 2,
			d = this.xn;
		d && (a = d.Bq, b = d.Cq, c = d[sb], Kh(ki($l), c), c = (c + 1) % 4, Kh(ki($l), c));
		var d = this.Zk.ue(),
			e, g;
		switch (d) {
		case "loading":
			g = am[c];
			e = g[0];
			g = g[1];
			break;
		case "none":
			g = e = "#fff";
			break;
		case "offline":
			e = "#999", g = "#777"
		}
		a = new bm(d, c, e, a, a, b, e, g, this.Ud);
		this.Ea(a, j);
		Ll(this[fd](), a, cm, this.Km);
		Il(a[Bc], 0, a);
		this.xn = a;
		dm(this)
	}
};
O.Km = function (a) {
	var b = this.Zk.ue();
	(b != a[K].state || "loading" == b) && this.Mt();
	dm(this)
};

function dm(a) {
	$a(a.ur[I], "offline" == a.Zk.ue() ? 1 : 0)
}
var am = {
	"0": ["#00B15F", "#008948"],
	1: ["#3C78F8", "#2159bd"],
	2: ["#FA2424", "#9e1212"],
	3: ["#FFD34B", "#dea11a"]
};

function bm(a, b, c, d, e, g, h, l, r, t) {
	Ol[L](this, t);
	this.state = a;
	this.complete = m;
	this.direction = b;
	this.jA = c;
	this.vw = d;
	this.kA = e;
	this.mA = g;
	this.Bq = h;
	this.Cq = l;
	this.qj = 1 == r ? 16 : 19
}
R(bm, Ol);
var cm = "complete_" + Tj++;
bm[G].k = function () {
	bm.a.k[L](this);
	var a = this.b(),
		b = this.v();
	S(a, "jfk-activityIndicator-circle-transition");
	var c = b.k("div", "jfk-activityIndicator-mask"),
		d = b.k("div", "jfk-activityIndicator-mask");
	b.append(a, c, d);
	var e = b.k("div", "jfk-activityIndicator-circle");
	b[v](c, e);
	$k(e, "backgroundColor", this.jA);
	var g = b.k("div", "jfk-activityIndicator-circle");
	b[v](d, g);
	$k(g, "backgroundColor", this.vw);
	var a = b.k("div", "jfk-activityIndicator-circle"),
		h = b.k("div", "jfk-activityIndicator-circle");
	b[v](c, a);
	b[v](d,
		h);
	$k(a, "backgroundColor", this.kA);
	$k(h, "backgroundColor", this.Cq);
	this.Ed = a;
	this.ed = h;
	this.Nj = e;
	this.uo = g;
	this.Mh = c;
	this.Fi = d;
	b = this[sb];
	c = this.qj + "px";
	d = s[Lb](this.qj / 2) + "px";
	e = "-" + d;
	switch (b) {
	case 1:
		$k(this.Mh, {
			left: 0,
			top: 0
		});
		$k(this.Fi, {
			left: d,
			top: 0
		});
		$k(this.Ed, {
			left: 0,
			top: 0
		});
		$k(this.ed, {
			width: 0,
			left: 0
		});
		$k(this.Nj, {
			left: 0,
			top: 0
		});
		$k(this.uo, {
			left: e
		});
		break;
	case 3:
		$k(this.Mh, {
			left: d,
			top: 0
		});
		$k(this.Fi, {
			left: 0,
			top: 0
		});
		$k(this.Ed, {
			left: e,
			top: 0
		});
		$k(this.ed, {
			width: 0,
			left: d
		});
		$k(this.Nj, {
			left: e,
			top: 0
		});
		break;
	case 0:
		$k(this.Mh, {
			left: 0,
			top: d
		});
		$k(this.Fi, {
			left: 0,
			top: 0
		});
		$k(this.Ed, {
			left: 0,
			top: e
		});
		$k(this.ed, {
			top: d,
			height: 0
		});
		$k(this.Nj, {
			left: 0,
			top: e
		});
		break;
	case 2:
		$k(this.Mh, {
			left: 0,
			top: 0
		}), $k(this.Fi, {
			left: 0,
			top: d
		}), $k(this.Ed, {
			left: 0,
			top: 0
		}), $k(this.ed, {
			left: 0,
			height: 0
		}), $k(this.Nj, {
			left: 0,
			top: 0
		}), $k(this.uo, {
			top: e
		})
	}
	b = 0 == this[sb] || 2 == this[sb] ? {
		width: c,
		height: d
	} : {
		width: d,
		height: c
	};
	$k(this.Mh, b);
	$k(this.Fi, b);
	S(a, "jfk-activityIndicator-transition");
	S(h, "jfk-activityIndicator-transition-second")
};
bm[G].play = function () {
	Ri && tl(this.b());
	this.AC = j;
	$k(this.Ed, "backgroundColor", this.mA);
	$k(this.ed, "backgroundColor", this.Bq);
	var a = this[sb],
		b = this.qj + "px",
		c = s[Lb](this.qj / 2) + "px",
		d = "-" + c;
	switch (a) {
	case 1:
		$k(this.Ed, {
			width: 0,
			left: c
		});
		$k(this.ed, {
			left: d,
			width: b
		});
		break;
	case 3:
		$k(this.Ed, {
			width: 0,
			left: 0
		});
		$k(this.ed, {
			width: b,
			left: 0
		});
		break;
	case 0:
		$k(this.Ed, {
			top: 0,
			height: 0
		});
		$k(this.ed, {
			top: 0,
			height: b
		});
		break;
	case 2:
		$k(this.Ed, {
			top: c,
			height: 0
		}), $k(this.ed, {
			top: d,
			height: b
		})
	}
	em(this, this.ed, ["webkitTransitionEnd",
		"transitionend"
	], this.Km)
};

function em(a, b, c, d) {
	var e = m;
	Ll(a[fd](), b, c, function () {
		e || (e = j, d[L](a))
	})
}
bm[G].Km = function () {
	this.complete = j;
	this[A](cm);
	xl(this.uo, m)
};
var fm = {};

function gm(a, b, c, d, e) {
	if (!U && (!Si || !ej("525"))) return j;
	if (Ki && e) return hm(a);
	if (e && !d || !c && (17 == b || 18 == b || Ki && 91 == b)) return m;
	if (Si && d && c) switch (a) {
	case 220:
	case 219:
	case 221:
	case 192:
	case 186:
	case 189:
	case 187:
	case 188:
	case 190:
	case 191:
	case 192:
	case 222:
		return m
	}
	if (U && d && b == a) return m;
	switch (a) {
	case 13:
		return !(U && gj(9));
	case 27:
		return !Si
	}
	return hm(a)
}

function hm(a) {
	if (48 <= a && 57 >= a || 96 <= a && 106 >= a || 65 <= a && 90 >= a || Si && 0 == a) return j;
	switch (a) {
	case 32:
	case 63:
	case 107:
	case 109:
	case 110:
	case 111:
	case 186:
	case 59:
	case 189:
	case 187:
	case 61:
	case 188:
	case 190:
	case 191:
	case 192:
	case 222:
	case 219:
	case 220:
	case 221:
		return j;
	default:
		return m
	}
}

function im(a) {
	switch (a) {
	case 61:
		return 187;
	case 59:
		return 186;
	case 224:
		return 91;
	case 0:
		return 224;
	default:
		return a
	}
}

function jm(a, b) {
	a[zc]("role", b)
}

function km(a, b, c) {
	a[zc]("aria-" + b, c)
}

function lm() {}
var mm;
Og(lm);
O = lm[G];
O.Ib = function () {};
O.k = function (a) {
	var b = a.v().k("div", this.pe(a)[N](" "), a.yc());
	nm(this, a, b);
	return b
};
O.O = function (a) {
	return a
};
O.lf = function (a, b, c) {
	if (a = a.b ? a.b() : a)
		if (U && !ej("7")) {
			var d = om(this, Uh(a), b);
			d[w](b);
			Q(c ? S : T, a)[he](k, d)
		} else $h(a, b, c)
};
O.Tb = function () {
	return j
};
O.I = function (a, b) {
	b.id && Rl(a, b.id);
	var c = this.O(b);
	c && c[uc] ? pm(a, c[uc][Oc] ? Oh(c[Hc]) : c[uc]) : a.pb = k;
	var d = 0,
		e = this.w(),
		g = this.w(),
		h = m,
		l = m,
		c = m,
		r = Uh(b);
	Fh(r, function (H) {
		!h && H == e ? (h = j, g == e && (l = j)) : !l && H == g ? l = j : d |= this.Dm(H)
	}, this);
	a.H = d;
	h || (r[w](e), g == e && (l = j));
	l || r[w](g);
	var t = a.wc;
	t && r[w][he](r, t);
	if (U && !ej("7")) {
		var y = om(this, r);
		0 < y[F] && (r[w][he](r, y), c = j)
	}(!h || !l || t || c) && Ya(b, r[N](" "));
	nm(this, a, b);
	return b
};
O.Ae = function (a) {
	a.Fe() && this.kh(a.b(), j);
	a.aa() && this.gd(a, a.F())
};

function nm(a, b, c) {
	b.aa() || a.pd(c, 1, j);
	b.dn() && a.pd(c, 8, j);
	b.Da & 16 && a.pd(c, 16, !! (b.H & 16));
	b.Da & 64 && a.pd(c, 64, b.Bb())
}
O.Ii = function (a, b) {
	zl(a, !b, !U && !Qi)
};
O.kh = function (a, b) {
	this.lf(a, this.w() + "-rtl", b)
};
O.De = function (a) {
	var b;
	return a.Da & 32 && (b = a.Pa()) ? Pk(b) : m
};
O.gd = function (a, b) {
	var c;
	if (a.Da & 32 && (c = a.Pa())) {
		if (!b && a.H & 32) {
			try {
				c[Ub]()
			} catch (d) {}
			a.H & 32 && a.Cc(k)
		}
		Pk(c) != b && Qk(c, b)
	}
};
O.D = function (a, b) {
	xl(a, b)
};
O.wa = function (a, b, c) {
	var d = a.b();
	if (d) {
		var e = this.Oh(b);
		e && this.lf(a, e, c);
		this.pd(d, b, c)
	}
};
O.pd = function (a, b, c) {
	mm || (mm = {
		1: "disabled",
		8: "selected",
		16: "checked",
		64: "expanded"
	});
	(b = mm[b]) && km(a, b, c)
};
O.La = function (a, b) {
	var c = this.O(a);
	if (c && (Ek(c), b))
		if (Sg(b)) Lk(c, b);
		else {
			var d = function (e) {
				if (e) {
					var g = ok(c);
					c[v](Sg(e) ? g[Vb](e) : e)
				}
			};
			Qg(b) ? Fh(b, d) : Rg(b) && !("nodeType" in b) ? Fh(Oh(b), d) : d(b)
		}
};
O.Pa = function (a) {
	return a.b()
};
O.w = function () {
	return "goog-control"
};
O.pe = function (a) {
	var b = this.w(),
		c = [b],
		d = this.w();
	d != b && c[w](d);
	b = a.ue();
	for (d = []; b;) {
		var e = b & -b;
		d[w](this.Oh(e));
		b &= ~e
	}
	c[w][he](c, d);
	(a = a.wc) && c[w][he](c, a);
	U && !ej("7") && c[w][he](c, om(this, c));
	return c
};

function om(a, b, c) {
	var d = [];
	c && (b = b[Sb]([c]));
	Fh([], function (e) {
		Jh(e, Q(Kh, b)) && (!c || Kh(e, c)) && d[w](e[N]("_"))
	});
	return d
}
O.Oh = function (a) {
	this.rj || qm(this);
	return this.rj[a]
};
O.Dm = function (a) {
	if (!this.pu) {
		this.rj || qm(this);
		var b = this.rj,
			c = {}, d;
		for (d in b) c[b[d]] = d;
		this.pu = c
	}
	a = oa(this.pu[a], 10);
	return ta(a) ? 0 : a
};

function qm(a) {
	var b = a.w();
	a.rj = {
		1: b + "-disabled",
		2: b + "-hover",
		4: b + "-active",
		8: b + "-selected",
		16: b + "-checked",
		32: b + "-focused",
		64: b + "-open"
	}
}

function rm() {}
R(rm, lm);
Og(rm);
O = rm[G];
O.Ib = function () {
	return "button"
};
O.pd = function (a, b, c) {
	16 == b ? km(a, "pressed", c) : rm.a.pd[L](this, a, b, c)
};
O.k = function (a) {
	var b = rm.a.k[L](this, a),
		c = a.we();
	c && this.Xk(b, c);
	(c = a.S()) && this.Ta(b, c);
	a.Da & 16 && this.pd(b, 16, !! (a.H & 16));
	return b
};
O.I = function (a, b) {
	b = rm.a.I[L](this, a, b);
	var c = this.S(b);
	a.kp = c;
	a.fp = this.we(b);
	a.Da & 16 && this.pd(b, 16, !! (a.H & 16));
	return b
};
O.S = Ng;
O.Ta = Ng;
O.we = function (a) {
	return a[id]
};
O.Xk = function (a, b) {
	a && Wa(a, b || "")
};
O.Se = function (a, b) {
	var c = a.Fe(),
		d = this.w() + "-collapse-left",
		e = this.w() + "-collapse-right";
	a.lf(c ? e : d, !! (b & 1));
	a.lf(c ? d : e, !! (b & 2))
};
O.w = function () {
	return "goog-button"
};

function sm(a, b) {
	a && this.td(a, b)
}
R(sm, Fl);
O = sm[G];
O.e = k;
O.hk = k;
O.nn = k;
O.ik = k;
O.bc = -1;
O.He = -1;
O.Al = m;
var tm = {
	3: 13,
	12: 144,
	63232: 38,
	63233: 40,
	63234: 37,
	63235: 39,
	63236: 112,
	63237: 113,
	63238: 114,
	63239: 115,
	63240: 116,
	63241: 117,
	63242: 118,
	63243: 119,
	63244: 120,
	63245: 121,
	63246: 122,
	63247: 123,
	63248: 44,
	63272: 46,
	63273: 36,
	63275: 35,
	63276: 33,
	63277: 34,
	63289: 144,
	63302: 45
}, um = {
		Up: 38,
		Down: 40,
		Left: 37,
		Right: 39,
		Enter: 13,
		F1: 112,
		F2: 113,
		F3: 114,
		F4: 115,
		F5: 116,
		F6: 117,
		F7: 118,
		F8: 119,
		F9: 120,
		F10: 121,
		F11: 122,
		F12: 123,
		"U+007F": 46,
		Home: 36,
		End: 35,
		PageUp: 33,
		PageDown: 34,
		Insert: 45
	}, vm = U || Si && ej("525"),
	wm = Ki && Ri;
O = sm[G];
O.Dc = function (a) {
	if (Si && (17 == this.bc && !a[sd] || 18 == this.bc && !a[dd] || Ki && 91 == this.bc && !a[dc])) this.He = this.bc = -1; - 1 == this.bc && (a[sd] && 17 != a[D] ? this.bc = 17 : a[dd] && 18 != a[D] ? this.bc = 18 : a[dc] && 91 != a[D] && (this.bc = 91));
	if (vm && !gm(a[D], this.bc, a[ie], a[sd], a[dd])) this[Cc](a);
	else this.He = Ri ? im(a[D]) : a[D], wm && (this.Al = a[dd])
};
O.ix = function (a) {
	this.He = this.bc = -1;
	this.Al = a[dd]
};
Ka(O, function (a) {
	var b = a.oe(),
		c, d, e = b[dd];
	U && "keypress" == a[E] ? (c = this.He, d = 13 != c && 27 != c ? b[D] : 0) : Si && "keypress" == a[E] ? (c = this.He, d = 0 <= b[oc] && 63232 > b[oc] && hm(c) ? b[oc] : 0) : Qi ? (c = this.He, d = hm(c) ? b[D] : 0) : (c = b[D] || this.He, d = b[oc] || 0, wm && (e = this.Al), Ki && (63 == d && 224 == c) && (c = 191));
	var g = c,
		h = b.keyIdentifier;
	c ? 63232 <= c && c in tm ? g = tm[c] : 25 == c && a[ie] && (g = 9) : h && h in um && (g = um[h]);
	a = g == this.bc;
	this.bc = g;
	b = new xm(g, d, a, b);
	Ua(b, e);
	this[A](b)
});
O.b = function () {
	return this.e
};
O.td = function (a, b) {
	this.ik && this[Dc]();
	this.e = a;
	this.hk = V(this.e, "keypress", this, b);
	this.nn = V(this.e, "keydown", this.Dc, b, this);
	this.ik = V(this.e, "keyup", this.ix, b, this)
};
O.detach = function () {
	this.hk && (Oj(this.hk), Oj(this.nn), Oj(this.ik), this.ik = this.nn = this.hk = k);
	this.e = k;
	this.He = this.bc = -1
};
O.i = function () {
	sm.a.i[L](this);
	this[Dc]()
};

function xm(a, b, c, d) {
	d && this.ta(d, i);
	La(this, "key");
	Ia(this, a);
	this.charCode = b;
	this.repeat = c
}
R(xm, zj);

function ym(a, b) {
	a || f(p("Invalid class name " + a));
	Ug(b) || f(p("Invalid decorator function " + b));
	zm[a] = b
}

function Am(a) {
	for (var b = Uh(a), c = 0, d = b[F]; c < d; c++)
		if (a = b[c] in zm ? zm[b[c]]() : k) return a;
	return k
}
var Bm = {}, zm = {};

function Cm(a) {
	var b = Am(a);
	b && b.I(a);
	return b
}

function Dm(a, b, c) {
	Ol[L](this, c);
	if (!b) {
		b = this.constructor;
		for (var d; b;) {
			d = Wg(b);
			if (d = Bm[d]) break;
			b = b.a ? b.a.constructor : k
		}
		b = d ? Ug(d.fa) ? d.fa() : new d : k
	}
	this.C = b;
	this.pb = a
}
R(Dm, Ol);
O = Dm[G];
O.pb = k;
O.H = 0;
O.Da = 39;
O.vh = 255;
O.Ri = 0;
O.ka = j;
O.wc = k;
O.Bg = j;
O.jj = m;
O.Ai = k;
O.Sr = function () {
	return this.Bg
};
O.Ji = function (a) {
	this.P && a != this.Bg && Em(this, a);
	this.Bg = a
};
O.Pa = function () {
	return this.C.Pa(this)
};
O.Qj = function () {
	return this.ga || (this.ga = new sm)
};
O.Bc = function () {
	return this.C
};

function Fm(a, b) {
	b && (a.wc ? Kh(a.wc, b) || a.wc[w](b) : a.wc = [b], a.C.lf(a, b, j))
}
O.lf = function (a, b) {
	b ? Fm(this, a) : a && this.wc && (Lh(this.wc, a), 0 == this.wc[F] && (this.wc = k), this.C.lf(this, a, m))
};
O.k = function () {
	var a = this.C.k(this);
	this.e = a;
	var b = this.Rh() || this.C.Ib();
	b && jm(a, b);
	this.jj || this.C.Ii(a, m);
	this.F() || this.C.D(a, m)
};
O.Rh = function () {
	return this.Ai
};
O.Ho = function (a) {
	this.Ai = a
};
O.O = function () {
	return this.C.O(this.b())
};
O.Tb = function (a) {
	return this.C.Tb(a)
};
O.xb = function (a) {
	this.e = a = this.C.I(this, a);
	var b = this.Rh() || this.C.Ib();
	b && jm(a, b);
	this.jj || this.C.Ii(a, m);
	this.ka = "none" != a[I][re]
};
O.Z = function () {
	Dm.a.Z[L](this);
	this.C.Ae(this);
	if (this.Da & -2 && (this.Sr() && Em(this, j), this.Da & 32)) {
		var a = this.Pa();
		if (a) {
			var b = this.Qj();
			b.td(a);
			this[fd]().j(b, "key", this.Jb).j(a, "focus", this.Wc).j(a, "blur", this.Cc)
		}
	}
};

function Em(a, b) {
	var c = a[fd](),
		d = a.b();
	b ? (c.j(d, "mouseover", a.ye).j(d, "mousedown", a.Ec).j(d, "mouseup", a.Af).j(d, "mouseout", a.Im), a.Uh != Ng && c.j(d, "contextmenu", a.Uh), U && c.j(d, "dblclick", a.$q)) : (c.pa(d, "mouseover", a.ye).pa(d, "mousedown", a.Ec).pa(d, "mouseup", a.Af).pa(d, "mouseout", a.Im), a.Uh != Ng && c.pa(d, "contextmenu", a.Uh), U && c.pa(d, "dblclick", a.$q))
}
O.Oa = function () {
	Dm.a.Oa[L](this);
	this.ga && this.ga[Dc]();
	this.F() && this.aa() && this.C.gd(this, m)
};
O.i = function () {
	Dm.a.i[L](this);
	this.ga && (this.ga.s(), delete this.ga);
	delete this.C;
	this.wc = this.pb = k
};
O.yc = function () {
	return this.pb
};
O.La = function (a) {
	this.C.La(this.b(), a);
	this.pb = a
};

function pm(a, b) {
	a.pb = b
}
O.tf = function () {
	var a = this.yc();
	if (!a) return "";
	a = Sg(a) ? a : Qg(a) ? Hh(a, Tk)[N]("") : Rk(a);
	return kh(a)
};
O.kh = function (a) {
	Dm.a.kh[L](this, a);
	var b = this.b();
	b && this.C.kh(b, a)
};
O.Ii = function (a) {
	this.jj = a;
	var b = this.b();
	b && this.C.Ii(b, a)
};
O.F = function () {
	return this.ka
};
O.D = function (a, b) {
	if (b || this.ka != a && this[A](a ? "show" : "hide")) {
		var c = this.b();
		c && this.C.D(c, a);
		this.aa() && this.C.gd(this, a);
		this.ka = a;
		return j
	}
	return m
};
O.aa = function () {
	return !(this.H & 1)
};
O.Ca = function (a) {
	var b = this[vb]();
	if ((!b || "function" != typeof b.aa || b.aa()) && Gm(this, 1, !a)) a || (this[Sc](m), this.Ob(m)), this.F() && this.C.gd(this, a), this.wa(1, !a)
};
O.Ob = function (a) {
	Gm(this, 2, a) && this.wa(2, a)
};
O.Be = function () {
	return !!(this.H & 4)
};
O.setActive = function (a) {
	Gm(this, 4, a) && this.wa(4, a)
};
O.dn = function () {
	return !!(this.H & 8)
};
O.Li = function (a) {
	Gm(this, 8, a) && this.wa(8, a)
};

function Hm(a, b) {
	Gm(a, 16, b) && a.wa(16, b)
}
O.Vk = function (a) {
	Gm(this, 32, a) && this.wa(32, a)
};
O.Bb = function () {
	return !!(this.H & 64)
};
O.Ba = function (a) {
	Gm(this, 64, a) && this.wa(64, a)
};
O.ue = function () {
	return this.H
};
O.wa = function (a, b) {
	this.Da & a && b != !! (this.H & a) && (this.C.wa(this, a, b), this.H = b ? this.H | a : this.H & ~a)
};

function Im(a, b, c) {
	a.P && (a.H & b && !c) && f(p("Component already rendered"));
	!c && a.H & b && a.wa(b, m);
	a.Da = c ? a.Da | b : a.Da & ~b
}

function Jm(a, b) {
	return !!(a.vh & b) && !! (a.Da & b)
}

function Gm(a, b, c) {
	return !!(a.Da & b) && !! (a.H & b) != c && (!(a.Ri & b) || a[A](Ql(b, c))) && !a.he
}
O.ye = function (a) {
	(!a[Ab] || !Kk(this.b(), a[Ab])) && (this[A]("enter") && this.aa() && Jm(this, 2)) && this.Ob(j)
};
O.Im = function (a) {
	if ((!a[Ab] || !Kk(this.b(), a[Ab])) && this[A]("leave")) Jm(this, 4) && this[Sc](m), Jm(this, 2) && this.Ob(m)
};
O.Uh = Ng;
O.Ec = function (a) {
	this.aa() && (Jm(this, 2) && this.Ob(j), Cj(a) && (Jm(this, 4) && this[Sc](j), this.C.De(this) && this.Pa()[qc]()));
	!this.jj && Cj(a) && a[Zb]()
};
O.Af = function (a) {
	this.aa() && (Jm(this, 2) && this.Ob(j), this.Be() && (this.Pd(a) && Jm(this, 4)) && this[Sc](m))
};
O.$q = function (a) {
	this.aa() && this.Pd(a)
};
O.Pd = function (a) {
	Jm(this, 16) && Hm(this, !(this.H & 16));
	Jm(this, 8) && this.Li(j);
	Jm(this, 64) && this.Ba(!this.Bb());
	var b = new xj("action", this);
	a && (Ua(b, a[dd]), b.ctrlKey = a[sd], Aa(b, a[dc]), b.shiftKey = a[ie], b.Yn = a.Yn);
	return this[A](b)
};
O.Wc = function () {
	Jm(this, 32) && this.Vk(j)
};
O.Cc = function () {
	Jm(this, 4) && this[Sc](m);
	Jm(this, 32) && this.Vk(m)
};
O.Jb = function (a) {
	return this.F() && this.aa() && this.ic(a) ? (a[Zb](), a[wd](), j) : m
};
O.ic = function (a) {
	return 13 == a[D] && this.Pd(a)
};
Ug(Dm) || f(p("Invalid component class " + Dm));
Ug(lm) || f(p("Invalid renderer class " + lm));
var Km = Wg(Dm);
Bm[Km] = lm;
ym("goog-control", function () {
	return new Dm(k)
});

function Lm() {}
R(Lm, rm);
Og(Lm);
O = Lm[G];
O.Ib = function () {};
O.k = function (a) {
	a.Ji(m);
	a.vh &= -256;
	Im(a, 32, m);
	return a.v().k("button", {
		"class": this.pe(a)[N](" "),
		disabled: !a.aa(),
		title: a.we() || "",
		value: a.S() || ""
	}, a.tf() || "")
};
O.Tb = function (a) {
	return "BUTTON" == a[je] || "INPUT" == a[je] && ("button" == a[E] || "submit" == a[E] || "reset" == a[E])
};
O.I = function (a, b) {
	a.Ji(m);
	a.vh &= -256;
	Im(a, 32, m);
	b[Bd] && S(b, this.Oh(1));
	return Lm.a.I[L](this, a, b)
};
O.Ae = function (a) {
	a[fd]().j(a.b(), "click", a.Pd)
};
O.Ii = Ng;
O.kh = Ng;
O.De = function (a) {
	return a.aa()
};
O.gd = Ng;
O.wa = function (a, b, c) {
	Lm.a.wa[L](this, a, b, c);
	(a = a.b()) && 1 == b && ab(a, c)
};
O.S = function (a) {
	return a[Yb]
};
O.Ta = function (a, b) {
	a && za(a, b)
};
O.pd = Ng;

function Mm(a, b, c) {
	Dm[L](this, a, b || Lm.fa(), c)
}
R(Mm, Dm);
O = Mm[G];
O.S = function () {
	return this.kp
};
O.Ta = function (a) {
	this.kp = a;
	this.Bc().Ta(this.b(), a)
};
O.we = function () {
	return this.fp
};
O.Xk = function (a) {
	this.fp = a;
	this.Bc().Xk(this.b(), a)
};
O.Se = function (a) {
	this.Bc().Se(this, a)
};
O.i = function () {
	Mm.a.i[L](this);
	delete this.kp;
	delete this.fp
};
O.Z = function () {
	Mm.a.Z[L](this);
	if (this.Da & 32) {
		var a = this.Pa();
		a && this[fd]().j(a, "keyup", this.ic)
	}
};
O.ic = function (a) {
	return 13 == a[D] && "key" == a[E] || 32 == a[D] && "keyup" == a[E] ? this.Pd(a) : 32 == a[D]
};
ym("goog-button", function () {
	return new Mm(k)
});
U && ej(8);
var Nm = va("[A-Za-z\u00c0-\u00d6\u00d8-\u00f6\u00f8-\u02b8\u0300-\u0590\u0800-\u1fff\u2c00-\ufb1c\ufe00-\ufe6f\ufefd-\uffff]"),
	Om = va("^[^A-Za-z\u00c0-\u00d6\u00d8-\u00f6\u00f8-\u02b8\u0300-\u0590\u0800-\u1fff\u2c00-\ufb1c\ufe00-\ufe6f\ufefd-\uffff]*[\u0591-\u07ff\ufb1d-\ufdff\ufe70-\ufefc]"),
	Pm = /^http:\/\/.*/,
	Qm = /\s+/,
	Rm = /\d/,
	Sm = {}, Tm = {}, Um = {}, Vm = /^<(?:area|base|br|col|command|embed|hr|img|input|keygen|link|meta|param|source|track|wbr)\b/;

function Wm(a, b) {
	if (!b) return qa(a)[z](Xm, "")[z](Ym, "&lt;");
	var c = qa(a)[z](/\[/g, "&#91;"),
		d = [],
		c = c[z](Xm, function (g, h) {
			if (h && (h = h[Be](), b[Ed](h) && b[h])) {
				var l = d[F];
				d[l] = ("/" === g[Tb](1) ? "</" : "<") + h + ">";
				return "[" + l + "]"
			}
			return ""
		}),
		c = qa(c)[z](Zm, $m),
		e = an(d),
		c = c[z](/\[(\d+)\]/g, function (g, h) {
			return d[h]
		});
	return c + e
}

function an(a) {
	for (var b = [], c = 0, d = a[F]; c < d; ++c) {
		var e = a[c];
		if ("/" === e[Tb](1)) {
			for (var g = b[F] - 1; 0 <= g && b[g] != e;) g--;
			0 > g ? a[c] = "" : (a[c] = b[Hb](g).reverse()[N](""), Va(b, g))
		} else Vm[yb](e) || b[w]("</" + e[be](1))
	}
	return b.reverse()[N]("")
}

function bn(a) {
	if (a && a.Rl) {
		if (a.Rl === Tm) return a[Ob];
		if (a.Rl === Sm) return a = Wm(a[Ob]), qa(a)[z](Zm, $m)
	}
	return qa(a)[z](cn, $m)
}

function dn(a) {
	return a && a.Rl === Um ? "zSoyz" : qa(a)
}
var en = {
	"\x00": "&#0;",
	'"': "&quot;",
	"&": "&amp;",
	"'": "&#39;",
	"<": "&lt;",
	">": "&gt;",
	"\t": "&#9;",
	"\n": "&#10;",
	"\x0B": "&#11;",
	"\f": "&#12;",
	"\r": "&#13;",
	" ": "&#32;",
	"-": "&#45;",
	"/": "&#47;",
	"=": "&#61;",
	"`": "&#96;",
	"\u0085": "&#133;",
	"\u00a0": "&#160;",
	"\u2028": "&#8232;",
	"\u2029": "&#8233;"
};

function $m(a) {
	return en[a]
}
var cn = /[\x00\x22\x26\x27\x3c\x3e]/g,
	Zm = /[\x00\x22\x27\x3c\x3e]/g,
	Xm = /<(?:!|\/?([a-zA-Z][a-zA-Z0-9:\-]*))(?:[^>'"]|"[^"]*"|'[^']*')*>/g,
	Ym = /</g;

function fn(a) {
	a = a || {};
	var b = '<div role="button"' + (a.id ? 'id="' + a.id + '"' : "") + 'class="goog-inline-block jfk-button ';
	switch (a[I]) {
	case 0:
		b += "jfk-button-standard";
		break;
	case 2:
		b += "jfk-button-action";
		break;
	case 3:
		b += "jfk-button-primary";
		break;
	case 1:
		b += "jfk-button-default";
		break;
	case 4:
		b += "jfk-button-flat";
		break;
	case 5:
		b += "jfk-button-mini";
		break;
	default:
		b += "jfk-button-standard"
	}
	return b += (1 == a[x] ? " jfk-button-narrow" : "") + (a[pd] ? " jfk-button-checked" : "") + (a.Ga ? " " + bn(a.Ga) : "") + (a[Bd] ? " jfk-button-disabled" :
		"") + '"' + (a[Bd] ? 'aria-disabled="true"' : 'tabindex="' + (a.EA ? bn(a.EA) : "0") + '"') + (a[ee] ? 'action="' + dn(a[ee]) + '"' : "") + (a[id] ? 'title="' + bn(a[id]) + '"' : "") + (a[Yb] ? 'value="' + bn(a[Yb]) + '"' : "") + (a.Cv ? dn(a.Cv) : "") + ">" + (a.Ch ? dn(a.Ch) : "") + "</div>"
}

function gn(a, b, c, d) {
	Mm[L](this, a, hn.fa(), b);
	this.$k = c || jn.sl;
	this.jl = d || kn.gv
}
R(gn, Mm);

function ln(a, b) {
	a.jl != b && (a.jl = b, mn(a))
}
gn[G].Ca = function (a) {
	this.aa() != a && (gn.a.Ca[L](this, a), mn(this))
};
gn[G].Vk = function (a) {
	gn.a.Vk[L](this, a);
	nn(this, m)
};
gn[G].Ec = function (a) {
	gn.a.Ec[L](this, a);
	this.aa() && nn(this, j)
};

function nn(a, b) {
	a.b() && $h(a.b(), "jfk-button-clear-outline", b)
}

function mn(a) {
	a.b() && on(a.Bc(), a)
}
var jn = {
	sl: 0,
	wb: 1,
	pl: 2,
	rl: 3,
	pp: 4,
	rp: 5
}, kn = {
		gv: 0,
		aj: 1
	};

function pn(a, b) {
	return new gn(a, b, jn.pl)
}

function qn(a, b) {
	var c = new gn(a, b);
	Im(c, 16, j);
	return c
}

function rn(a, b) {
	if (Sg(a)) {
		var c = a;
		a = yk("img");
		a.src = c;
		rl(a, 21, 21)
	}
	S(a, "jfk-button-img");
	c = [];
	c[w](a);
	if (b) {
		var d = yk("span", "jfk-button-label", b);
		c[w](d)
	}
	return c
}

function hn() {
	this.lu = this.w() + "-standard";
	this.wp = this.w() + "-action";
	this.vt = this.w() + "-primary";
	this.pq = this.w() + "-default";
	this.Oq = this.w() + "-flat";
	this.Ls = this.w() + "-narrow";
	this.Hs = this.w() + "-mini"
}
R(hn, rm);
Og(hn);
O = hn[G];
O.$f = function (a, b, c) {
	a && c.$k != a && (c.$k = a, mn(c));
	b && ln(c, b)
};
O.w = function () {
	return "jfk-button"
};
O.k = function (a) {
	var b = a.v(),
		c;
	a: {
		var d = {
			disabled: !a.aa(),
			checked: !! (a.H & 16),
			style: a.$k,
			title: a.we(),
			value: a.S(),
			width: a.jl
		};
		c = (b || mk())[rc]("DIV");
		u(c, fn(d || fm, i, i));
		if (1 == c[Hc][F] && (d = c[uc], 1 == d[Ib])) {
			c = d;
			break a
		}
	}
	b.append(c, a.yc());
	this.I(a, c);
	return c
};
O.I = function (a, b) {
	hn.a.I[L](this, a, b);
	this.Zp || (this.Zp = si(this.lu, Q(this.$f, jn.sl, k), this.wp, Q(this.$f, jn.pl, k), this.vt, Q(this.$f, jn.rl, k), this.pq, Q(this.$f, jn.wb, k), this.Oq, Q(this.$f, jn.pp, k), this.Hs, Q(this.$f, jn.rp, k), this.Ls, Q(this.$f, k, kn.aj)));
	for (var c = Uh(b), d = 0; d < c[F]; ++d) {
		var e = this.Zp[c[d]];
		e && e(a)
	}
	return b
};
O.S = function (a) {
	return a[Rd]("value") || ""
};
O.Ta = function (a, b) {
	a && a[zc]("value", b)
};
O.wa = function (a, b, c) {
	hn.a.wa[L](this, a, b, c);
	if (32 == b) try {
		var d = a.b();
		c ? d[qc]() : d[Ub]()
	} catch (e) {}
};

function on(a, b) {
	function c(h, l) {
		(h ? d : e)[w](l)
	}
	var d = [],
		e = [],
		g = b.$k;
	c(g == jn.sl, a.lu);
	c(g == jn.pl, a.wp);
	c(g == jn.rl, a.vt);
	c(g == jn.pp, a.Oq);
	c(g == jn.rp, a.Hs);
	c(g == jn.wb, a.pq);
	c(b.jl == kn.aj, a.Ls);
	c(!b.aa(), a.w() + "-disabled");
	Yh(b.b(), e, d)
}

function sn(a) {
	var b;
	b = q[rc]("div");
	lk ? (u(b, "<br>" + a), b[Hd](b[uc])) : u(b, a);
	if (1 == b[Hc][F]) b = b[Hd](b[uc]);
	else {
		for (a = q.createDocumentFragment(); b[uc];) a[v](b[uc]);
		b = a
	}
	return b
}

function W(a) {
	return ph(qa(a))
}

function X(a, b) {
	return (b || q)[Pb](a)
}

function Y(a, b, c) {
	a = tk(c, b, a);
	if (1 <= a[F]) return a[0];
	f(p())
}

function tn(a) {
	a == k && f(p());
	var b = {};
	a = a[Tc]("*");
	for (var c = 0, d; d = a[c]; c++)
		for (var e = Uh(d), g = 0; g < e[F]; g++) {
			var h = e[g];
			h && (h in b || (b[h] = []), b[h][w](d))
		}
	return b
}

function un(a) {
	return q[Vb](a)
}
Lg(n._LOGIN_URL) || (_LOGIN_URL = vn(j));

function wn(a, b) {
	function c(d) {
		for (var e = 0; e < d[F]; e++) cb(d[e], b)
	}
	c(a[Tc]("a"));
	c(a[Tc]("area"))
}

function xn(a, b) {
	if (b) {
		var c = new Date;
		if (a[cd]() == c[cd]() && a[Wb]() == c[Wb]() && a[Ud]() == c[Ud]() || 432E5 > s.abs(c[Qc]() - a[Qc]())) var c = a.getHours(),
		d = a.getMinutes(), c = Hg(Gg(c % 12 || 12, 1), ":", Gg(d, 2), " ", Fg[12 <= c && 24 > c ? 1 : 0]);
		else {
			var c = a[cd](),
				d = a[Wb](),
				e = a[Ud]();
			0 >= e && (e = -e + 1);
			c = Hg(Eg[c], " ", Gg(d, 1), ", ", Gg(e, 4))
		}
		return c
	}
	var c = a[cd](),
		d = a[Wb](),
		e = a[Ud](),
		g = a.getHours(),
		h = a.getMinutes();
	0 >= e && (e = -e + 1);
	return Hg(Eg[c], " ", Gg(d, 1), ", ", Gg(e, 4), " ", Gg(g % 12 || 12, 1), ":", Gg(h, 2), " ", Fg[12 <= g && 24 > g ? 1 : 0])
}

function yn(a) {
	var b = new Date,
		c = b[Qc](),
		d = a[Qc]();
	if (d > c) return k;
	c = s[Nb]((c - d) / 6E4);
	if (60 > c) switch (c) {
	case 0:
		return "seconds ago";
	case 1:
		return "1 minute ago";
	default:
		return zn("%1 minutes ago", c)
	}
	c = s[Nb](c / 60);
	if (24 > c) return 1 == c ? "1 hour ago" : zn("%1 hours ago", c);
	c = 6E4 * (new Date).getTimezoneOffset();
	a = s[Nb](((new Date(b[Ud](), b[cd](), b[Wb]()))[Qc]() + c) / 864E5) - s[Nb](((new Date(a[Ud](), a[cd](), a[Wb]()))[Qc]() + c) / 864E5);
	return 7 > a ? 1 == a ? "yesterday" : zn("%1 days ago", a) : k
}

function zn(a, b) {
	if (b instanceof wa) {
		for (var c = 0; c < b[F]; c++) a = a[z]("%" + (c + 1), b[c]);
		return a
	}
	return a[z]("%1", b)
}

function An(a) {
	return n[yd][Td] + "//" + n[yd].host + a
}
var Bn = va("<(/s*(blockquote|body|center|dd|dir|div|dl|dt|form|h1|h2|h3|h4|h5|h6|head|html|hr|isindex|li|menu|noframes|ol|p|table|td|th|tr|title|ul)[^>]*|s*br[^>]*)>", "gi"),
	Cn = /<[^>]*>/gi,
	Dn = /</g,
	En = />/g,
	Fn = /(\xa0|[^\S\n])+/g,
	Gn = / \n ?/g,
	Hn = /\n\n+/g;

function In(a, b) {
	if (!a) return "";
	b && (a = a[z](Bn, " "));
	a = a[z](Cn, "");
	return a[z](Dn, "&lt;")[z](En, "&gt;")
}

function Jn(a, b) {
	$h(a, "hidden", !b)
}

function Kn(a) {
	if (!a) return "";
	eh(a, "x-") && (a = a[be](2));
	return lh(a[td]("/")[0])[Be]()
}

function Ln() {
	return (new Date)[Qc]()
}

function Mn(a) {
	for (var b = [], c = 0, d; d = a[c]; c++) b[w](d[0] + "=" + nh(d[1]));
	return b[N]("&")
}
var Nn = {};

function On(a) {
	a in Nn || (Nn[a] = dk(n[yd][Kd], a));
	return Nn[a]
}

function Pn(a) {
	On("hl") && (a = bk(a, "hl", "en"));
	var b = On("gl");
	b && (a = bk(a, "gl", b));
	return a
}

function Qn(a) {
	a = Pn(a);
	var b = k;
	Lg(n._GR_USER_TOKEN) && (b = n._GR_USER_TOKEN);
	return (b = On("at") || b) ? bk(a, "at", b) : a
}

function Rn(a, b) {
	var c;
	return function () {
		c && n[Db](c);
		var d = this;
		c = n[qd](function () {
			c = k;
			b[L](d)
		}, a)
	}
}

function Sn(a) {
	a = Vj(a)[1] || k;
	return Kh(Fe, a)
}

function Tn(a, b) {
	var c = "https://www.google.com/accounts/" + a + "?service=reader&passive=true&nui=1&ltmpl=default";
	if (b) {
		var d;
		try {
			d = n.top[yd][ae]
		} catch (e) {
			d = n[yd][ae]
		}
		c += "&continue=" + ba(d) + "&followup=" + ba(d)
	}
	return c
}

function vn(a) {
	n._IS_MULTILOGIN_ENABLED ? (a = Tn("AddSession", a), a += "&Email=" + ba(na)) : a = Tn("ServiceLogin", a);
	return a
}
var Un = "google:reader";

function Vn(a, b, c, d, e, g) {
	function h(r) {
		r()
	}
	if (!b) return m;
	if (n.gbar && n.gbar.lPWF) h = n.gbar.lPWF;
	else if (!n.gapi || !n.gapi.plusone || !n.gapi.plusone.render) return m;
	var l = q[rc]("img");
	ob(l[I], "none");
	l.src = "data:,";
	l.onerror = function () {
		h(function () {
			n.gapi && (n.gapi.plusone && n.gapi.plusone.render) && n.gapi.plusone.render(a, {
				size: c,
				href: b,
				expandTo: d,
				callback: g,
				recommendations: "false",
				source: e ? e : Un
			})
		})
	};
	a[v](l);
	return j
}

function Wn(a, b) {
	var c = vh(In(a, j) || ""),
		c = lh(c),
		c = c[z](Fn, " "),
		c = c[z](Gn, "\n"),
		c = c[z](Hn, "\n\n");
	return Ah(c, b, m)
}

function Xn() {
	var a = [],
		b, c;
	for (b = 0; c = q[Tc]("link")[b]; b++) - 1 != c[Rd]("rel")[cc]("stylesheet") && a[w](c);
	return a
}
var Yn = ua ? "/atom/" : Xe,
	Zn = We;

function $n(a) {
	this.streamId = a;
	this.Fk = k;
	this.of = [];
	this.K && this.K instanceof ao || (this.K = a = this instanceof bo ? co : eo(this[C]) ? fo(this) : eh(this[C], "builtinbundle/") ? go : ho);
	if (this.K.Ha) {
		a = io(this);
		for (var b = 0; b < a.Me[F]; b++) a.Me[b] = jo(a.Me[b]);
		this.streamId = ko(a)
	}
	this.ys = m
}

function ao(a, b, c) {
	this.wv = a;
	this.Ha = b;
	this.Hg = c
}
var co, go, ho, lo, mo, no, oo, po, qo, ro, so, to, uo, vo, wo, xo, yo, zo;
lo = new ao(m, j, j);
mo = new ao(m, j, j);
no = new ao(j, j, j);
co = new ao(m, m, m);
oo = new ao(m, j, j);
po = new ao(m, j, j);
qo = new ao(m, j, j);
ro = new ao(m, j, j);
so = new ao(m, j, j);
to = new ao(j, j, j);
ho = new ao(j, m, j);
uo = new ao(j, m, j);
vo = new ao(m, m, m);
wo = new ao(m, m, m);
xo = new ao(m, j, m);
go = new ao(m, m, m);
new ao(m, j, m);
yo = new ao(m, j, m);
zo = new ao(m, j, m);

function fo(a) {
	try {
		var b = io(a),
			c = b[nc]();
		if ("state" == b[E] && c && "alerts" == c) return uo;
		if ("bundle" == b[E]) return xo;
		if ("state" == b[E] || "source" == b[E]) switch (c) {
		case "read":
			return lo;
		case "kept-unread":
			return mo;
		case "starred":
			return oo;
		case "reading-list":
			return no;
		case "broadcast":
			return po;
		case "post":
			return qo;
		case "link":
			return ro;
		case "created":
			return so;
		case "like":
			return yo;
		case "dislike":
			return zo
		}
		return to
	} catch (d) {
		return k
	}
}

function Ao(a) {
	return Bo(ko(a))
}

function Bo(a) {
	a = eh(a, "search/") ? new bo(a[be](7)) : (!eh(a, "splice/") ? k : new Co(a)) || new $n(a);
	for (var b = 0, c; c = Do[b]; b++) a = c(a);
	return a
}
var Do = [];

function Eo(a) {
	Do[w](a)
}

function Fo() {
	return "pop/topic/top/language/"
}

function Go() {
	return new Ho(Fo() + "en", "Recommended items")
}

function Io(a) {
	return Jo(a) ? k : a[C][be](0, a[C][cc]("/", 1) + 1) + nh(a[C][be](a[C][cc]("/", 1) + 1, a[C][F]))
}

function Ko(a, b, c) {
	return eh(a[C], b) ? Io(a) : a.K.Ha ? (a = io(a), c && !Lo(a) && a.Mo("-"), "pref" == a[E] || "state" == a[E] ? b + ko(a) : b + nh(ko(a))) : b + Io(a)
}

function Mo(a) {
	if (Jo(a)) return k;
	var b = Ko(a, Yn);
	return b ? No(a, b) : k
}

function Oo(a, b) {
	if (Jo(a)) return k;
	var c = Ko(a, "/api/0/stream/contents/");
	return b ? c : c ? No(a, c) : k
}

function Po(a, b, c) {
	if (Jo(a)) return k;
	var d;
	d = bk("/api/0/stream/items/ids", "s", a[C]);
	if (b) return d;
	c && (d = bk(d, "deb", c));
	return d ? Qo(a, d) : k
}

function No(a, b) {
	var c = b;
	a.to && (c = bk(c, "scr", a.to));
	a[Ec] && (c = bk(c, "trans", a[Ec]));
	return b = Qo(a, c)
}

function Qo(a, b) {
	a.Pn && (b = bk(b, "ot", a.Pn));
	a.Fk && (b = bk(b, "r", a.Fk));
	for (var c = 0; c < a.of[F]; c++) b = bk(b, "xt", ko(a.of[c]));
	return b
}

function Ro(a, b) {
	a.to && (b += "&scr=" + nh(a.to));
	a[Ec] && (b += "&trans=" + nh(a[Ec]));
	return b
}

function So(a, b) {
	if (Jo(a)) return k;
	var c = Ko(a, Zn, b);
	return c ? Qn(c) : k
}
O = $n[G];
O.Wo = function () {
	return Jo(this) ? this.gb() : Oo(this, j)
};
O.W = function (a) {
	return !(a instanceof $n) ? m : this.Wo() == a.Wo()
};

function io(a) {
	return To(a[C])
}

function Uo() {
	return Ao(Vo(Z))
}

function Wo(a) {
	return Xo(a, Vo(Z)) || Xo(a, Yo(Z)) || Xo(a, Zo(Z)) || Xo(a, $o(Z, "post"))
}

function Xo(a, b) {
	return Ao(b).W(a)
}

function Jo(a) {
	return a.K == co || a.K == vo
}
O.Hg = function () {
	return this.K.Hg
};

function ap(a) {
	return a instanceof Ho
}

function bp(a) {
	return a instanceof Co
}
O.Hc = function () {
	return this instanceof cp
};

function dp(a) {
	return ap(a) || a.Hc() || bp(a)
}

function ep(a) {
	return a.K == wo || a.K == vo
}
O.Io = function (a) {
	this.Fk = a
};
O.ek = function () {
	return Xo(this, fp(Z)) || Xo(this, gp(Z, "itemrecs/en"))
};

function hp(a, b) {
	for (var c = 0, d; d = a.of[c]; c++)
		if (d.W(b)) return j;
	return m
}
O.$b = function () {
	return this.K.Ha && !Lo(io(this))
};

function bo(a, b) {
	this.Nb = a;
	this.Tf = b || [];
	$n[L](this, "search/" + a)
}
R(bo, $n);
bo[G].gb = function () {
	return this.Nb
};

function ip(a) {
	if (!a.Tf) return k;
	for (var b = [], c = 0, d; d = a.Tf[c]; c++) b[w](d[C]);
	return b
}

function jp(a, b) {
	$n[L](this, a[C]);
	this.streamId = k;
	this.$g = a;
	this.So = b;
	a instanceof bo ? (this.K = vo, this.Nb = a.gb()) : this.K = wo
}
R(jp, $n);
jp[G].gb = function () {
	return this.Nb
};
jp[G].Wo = function () {
	return this.Nb ? this.Nb : this.$g[C] + "_" + this.So
};
jp[G].W = function (a) {
	return !(a instanceof jp) ? m : this.$g[C] == a.$g[C] && this.So == a.So
};

function cp(a, b, c) {
	$n[L](this, a);
	this.impressionTime = b;
	Wa(this, c)
}
R(cp, $n);
var kp = va("splice/(?:" + Bh("|") + ")*$");

function Co(a, b, c) {
	if (!Sg(a)) {
		for (var d = [], e = 0, g; g = a[e]; e++) eh(g, "splice/") ? d[w](g[z]("splice/", "")) : d[w](g[z](lp, "\\$1"));
		a = "splice/" + d[N]("|")
	}
	$n[L](this, a);
	Wa(this, b);
	this.cm = c;
	this.Gf = kp[yb](a)
}
R(Co, $n);
var lp = va("([\\\\|])", "g");

function Ho(a, b) {
	Co[L](this, a, b)
}
R(Ho, Co);
Ho[G].ek = function () {
	return j
};

function mp(a, b) {
	Co[L](this, a, b)
}
R(mp, Co);
mp[G].ek = function () {
	return j
};

function np() {
	this.ph = {};
	if (op) {
		var a = this;
		op.ce(function () {
			a.ph = {}
		})
	}
}
np[G].Vc = function (a, b, c) {
	var d = this.ph;
	if (a[C] && a[C] in d) c(d[a[C]]);
	else {
		var e = function (l) {
			a[C] && (d[a[C]] = l);
			c(l)
		};
		if ((bp(a) || ap(a) || a.Hc()) && !jh(a[id])) e(a[id]);
		else {
			var g = a.K.Ha && a.K != xo,
				h = function () {
					var l = io(a);
					a.$b() ? e(pp(l, qp)) : b ? b.ti(function () {
						e(pp(l, qp))
					}) : c(k)
				};
			op && (op.Zc || !b) ? op.ve(a, function (l) {
				l ? e(ph(l.h)) : g ? h() : b ? b.yf(e) : c(k)
			}) : g ? h() : b ? b.yf(e) : c(k)
		}
	}
};
var rp = new np;

function sp(a, b) {
	var c = {}, d;
	for (d = 0; d < b[F]; d++) c[b[d]] = 1;
	var e = {};
	for (d = 0; d < a[F]; d++) {
		var g = a[d];
		c[g] ? delete c[g] : e[g] = 1
	}
	d = {
		sd: [],
		Rd: []
	};
	for (var h in c) d.sd[w](h);
	for (var l in e) d.Rd[w](l);
	return d
}
var tp = /^[\d+]+$/;

function up(a, b, c) {
	"-" == a ? db(this, ua) : tp[yb](a) || !a ? db(this, a) : f('Malformed user ID "' + a + '"');
	La(this, b);
	this.Me = c
}

function ko(a) {
	var b = [];
	b[w]("user");
	b[w](a[Md]);
	b[w](a[E]);
	b = b[Sb](a.Me);
	return b[N]("/")
}
up[G].W = function (a) {
	return !(a instanceof up) ? m : ko(a) == ko(this)
};

function vp(a, b) {
	return !(b instanceof up) ? m : b[E] + b.Me == a[E] + a.Me
}

function To(a) {
	var b = eo(a);
	if (b) return new up(b[1], b[2], b[Hb](3));
	f('Malformed tag from "' + a + '"')
}

function eo(a) {
	a = a[td]("/");
	return 3 > a[F] ? k : "user" == a[0] ? a : k
}

function wp(a) {
	return a[E] == lf ? a[nc]() : pp(a, qp)
}

function xp(a) {
	return a[E] == lf ? a[nc]() : pp(a, yp)
}

function zp(a) {
	return !Lo(a) ? k : !(a[Md] in Ap) ? ph(a[Md]) : Ap[a[Md]]
}
up[G].Mo = function (a) {
	db(this, a)
};
var Ap = {};

function Lo(a) {
	return a[Md] != ua && "-" != a[Md]
}
var qp = [
	function (a) {
		return a.wb
	},
	function (a) {
		return a.ae
	}
],
	yp = [
		function (a) {
			return a.Fb
		},
		function () {
			return k
		}
	],
	Bp = [
		function (a) {
			return a.EMPTY
		},
		function (a) {
			return a.be
		}
	],
	Cp = [
		function (a) {
			return a.$d
		},
		function (a) {
			return a.fg
		}
	];

function pp(a, b) {
	var c = b[Lo(a) ? 1 : 0];
	if ("state" == a[E] || "source" == a[E]) {
		var d = a[nc](),
			e = k;
		"read" == d ? e = qg : "starred" == d ? e = sg : "like" == d ? e = tg : "dislike" == d ? e = ug : "reading-list" == d ? e = rg : "kept-unread" == d ? e = wg : "broadcast" == d ? e = xg : "post" == d ? e = zg : "link" == d ? e = Ag : "created" == d ? e = Bg : a.W(Dp(Z)) && (e = yg);
		if (!e) return d;
		c = c(e);
		return !c ? d : zn(vh(c), zp(a))
	}
	return zn(c(vg), [a[nc](), zp(a)])
}
Fa(up[G], function () {
	return this[E] == lf ? this.Me[0] : "state" == this[E] || "source" == this[E] ? this.Me[1] : k
});

function Ep(a) {
	this.Mo(a)
}
Ep[G].Mo = function (a) {
	db(this, a)
};

function Vo(a) {
	return gp(a, "reading-list")
}

function Fp(a) {
	return gp(a, "read")
}

function Gp(a) {
	return gp(a, "kept-unread")
}

function Yo(a) {
	return gp(a, "starred")
}

function fp(a) {
	return gp(a, "dislike")
}

function Dp(a) {
	return new up(a[Md], "state", ["com.blogger", "blogger-following"])
}

function Zo(a) {
	return gp(a, "broadcast")
}

function Hp(a, b) {
	return new up(a[Md], lf, [b])
}

function gp(a, b) {
	return new up(a[Md], "state", ["com.google", b])
}

function $o(a, b) {
	return new up(a[Md], "source", ["com.google", b])
}
var Z;

function Ip(a, b) {
	xj[L](this, "navigate");
	this.RA = a;
	this.cC = b
}
R(Ip, xj);

function Jp(a, b, c, d) {
	a && !b && f(p("Can't use invisible history without providing a blank page."));
	var e;
	c ? e = c : (e = "history_state" + Kp, q[hc](gh('<input type="text" name="%s" id="%s" style="display:none">', e, e)), e = pk(e));
	this.Xh = e;
	this.Va = c ? xk(ok(c)) : n;
	this.Iv = this.Va[yd][ae][td]("#")[0];
	this.Zj = b;
	U && !b && (this.Zj = "https" == n[yd][Td] ? "https:///" : 'javascript:""');
	b = this.R = new Gl(150);
	this.zj || (this.zj = []);
	this.zj[w](b);
	this.cg = !a;
	this.J = new Jl(this);
	if (a || Lp) d ? a = d : (a = "history_iframe" + Kp, d = this.Zj ? 'src="' +
		ph(this.Zj) + '"' : "", q[hc](gh('<iframe id="%s" style="display:none" %s></iframe>', a, d)), a = pk(a)), this.Yc = a, this.Lu = j;
	Lp && (this.J.j(this.Va, "load", this.Iy), this.bu = this.$l = m);
	this.cg ? this.hh(Mp(this), j) : Np(this, this.Xh[Yb]);
	Kp++
}
R(Jp, Fl);
Jp[G].eb = m;
Jp[G].Qg = m;
Jp[G].Kg = k;
var Op = U && gj(8) || Ri && ej("1.9.2") || Si && ej("532.1"),
	Lp = U && !gj(8),
	Pp = Lp;
O = Jp[G];
O.Og = k;
O.i = function () {
	Jp.a.i[L](this);
	this.J.s();
	this.Ca(m)
};
O.Ca = function (a) {
	if (a != this.eb)
		if (Lp && !this.$l) this.bu = a;
		else if (a)
		if (Qi ? this.J.j(this.Va[rd], Qp, this.dz) : Ri && this.J.j(this.Va, "pageshow", this.xk), Op && this.cg) this.J.j(this.Va, "hashchange", this.Ly), this.eb = j, this[A](new Ip(Mp(this), m));
		else {
			if (!U || this.$l) this.J.j(this.R, "tick", P(this.fe, this, j)), this.eb = j, Lp || (this.Kg = Mp(this), this[A](new Ip(Mp(this), m))), this.R[Qd]()
		} else this.eb = m, this.J.Qd(), this.R[ad]()
};
O.Iy = function () {
	this.$l = j;
	this.Xh[Yb] && Np(this, this.Xh[Yb], j);
	this.Ca(this.bu)
};
O.xk = function (a) {
	a.oe().persisted && (this.Ca(m), this.Ca(j))
};
O.Ly = function () {
	var a = Rp(this, this.Va);
	a != this.Kg && this.Xe(a, j)
};

function Mp(a) {
	return a.Og != k ? a.Og : a.cg ? Rp(a, a.Va) : Sp(a) || ""
}
O.Lo = function (a, b) {
	Tp(this, a, m, b)
};

function Rp(a, b) {
	var c = b[yd][ae],
		d = c[cc]("#");
	return 0 > d ? "" : c[be](d + 1)
}

function Tp(a, b, c, d) {
	Mp(a) != b && (a.cg ? (a.hh(b, c), Op || U && Np(a, b, c, d), a.eb && a.fe(m)) : (Np(a, b, c), a.Og = a.Kg = za(a.Xh, b), a[A](new Ip(b, m))))
}
O.hh = function (a, b) {
	var c = this.Va[yd],
		d = this.Iv,
		e = wh(c[ae], "#");
	if (Pp || e || a) d += "#" + a;
	d != c[ae] && (b ? c[z](d) : jb(c, d))
};

function Np(a, b, c, d) {
	if (a.Lu || b != Sp(a))
		if (a.Lu = m, b = nh(b), U) {
			var e = a.Yc[le] || a.Yc[Pc][rd];
			e[xb]("text/html", c ? "replace" : i);
			e[hc](gh("<title>%s</title><body>%s</body>", ph(d || a.Va[rd][id]), b));
			e.close()
		} else b = a.Zj + "#" + b, (a = a.Yc[Pc]) && (c ? a[yd][z](b) : jb(a[yd], b))
}

function Sp(a) {
	if (U) return a = a.Yc[le] || a.Yc[Pc][rd], a[J] ? oh(a[J][Qb]) : k;
	var b = a.Yc[Pc];
	if (b) {
		var c;
		try {
			c = oh(Rp(a, b))
		} catch (d) {
			return a.Qg || (a.Qg != j && a.R[vd](1E4), a.Qg = j), k
		}
		a.Qg && (a.Qg != m && a.R[vd](150), a.Qg = m);
		return c || k
	}
	return k
}
O.fe = function (a) {
	if (this.cg) {
		var b = Rp(this, this.Va);
		b != this.Kg && this.Xe(b, a)
	}
	if (!this.cg || Lp)
		if (b = Sp(this) || "", this.Og == k || b == this.Og) this.Og = k, b != this.Kg && this.Xe(b, a)
};
O.Xe = function (a, b) {
	this.Kg = za(this.Xh, a);
	this.cg ? (Lp && Np(this, a), this.hh(a)) : Np(this, a);
	this[A](new Ip(Mp(this), b))
};
O.dz = function () {
	this.R[ad]();
	this.R[Qd]()
};
var Qp = ["mousedown", "keydown", "mousemove"],
	Kp = 0,
	Up = {
		fv: "navigate"
	};

function Vp() {
	Jp[L](this);
	this.es = m;
	Lj(this.Va, "load", this.bz, m, this)
}
R(Vp, Jp);
Vp[G].hh = function (a, b) {
	if (this.es) Vp.a.hh[L](this, a, b);
	else this.Nt = a, this.Kz = b
};
Vp[G].bz = function () {
	this.es = j;
	this.Nt && this.hh(this.Nt, this.Kz)
};

function Wp() {
	if (this.fk = !Qi) this.Xj = new Vp, V(this.Xj, Up.fv, this.Uj, m, this), this.vn = k, this.Qr = j
}
Wp[G].ta = function () {
	this.fk && this.Xj.Ca(j)
};

function Xp(a, b) {
	a.is = a.vn = b;
	a.Qr ? (Tp(a.Xj, b, j, i), a.Qr = m) : a.Xj.Lo(b)
}
var Yp = /[']/g;
Wp[G].save = function (a, b) {
	function c(h) {
		return nh(h)[z](Yp, function (l) {
			l = l[Xd](0);
			return "%" + (l >> 4 & 15)[bd](16) + (l & 15)[bd](16)
		})
	}
	if (this.fk) {
		var d = a;
		if (b) {
			for (var d = d + "/", e = [], g = 0; g < b[F]; g++) e[w](c(b[g]));
			d += e[N]("/")
		}
		Xp(this, d)
	}
};
Wp[G].Uj = function (a) {
	a = a.RA;
	a != this.vn && a != this.is && (this.vn = k, this.is = a, (a = Zp(this, a)) && a[0].Ci(a[1]))
};

function Zp(a, b) {
	for (var c = b[td]("/"), d = c[0], c = c[Hb](1), e = 0; e < c[F]; e++) try {
		c[e] = oh(c[e])
	} catch (g) {
		return k
	}
	for (var h in $p)
		if (e = $p[h], e[Id]() == d) return [e, c];
	return k
}

function aq() {}
aq[G].save = function (a) {
	bq[zd](this[Id](), a)
};
bb(aq[G], function () {
	return this.Q
});

function cq() {
	this.Q = "stream"
}
R(cq, aq);
cq[G].Ci = function (a) {
	a = a[N]("/");
	a = jh(a) ? Uo() : Bo(a);
	$.g() && $.g().W(a) && $.va ? (dq(), eq(a)) : fq(a)
};
var $p = {}, bq;
$p.tp = new cq;

function gq(a) {
	a = qa(a);
	if (/^\s*$/ [yb](a) ? 0 : /^[\],:{}\s\u2028\u2029]*$/ [yb](a[z](/\\["\\\/bfnrtu]/g, "@")[z](/"[^"\\\n\r\u2028\u2029\x00-\x08\x0a-\x1f]*"|true|false|null|-?\d+(?:\.\d*)?(?:[eE][+\-]?\d+)?/g, "]")[z](/(?:^|:|,)(?:[\s\u2028\u2029]*\[)+/g, ""))) try {
		return eval("(" + a + ")")
	} catch (b) {}
	f(p("Invalid JSON string: " + a))
}

function hq(a) {
	return eval("(" + a + ")")
}

function iq(a) {
	this.Jk = a
}

function jq(a, b, c) {
	switch (typeof b) {
	case "string":
		kq(a, b, c);
		break;
	case "number":
		c[w](isFinite(b) && !ta(b) ? b : "null");
		break;
	case "boolean":
		c[w](b);
		break;
	case "undefined":
		c[w]("null");
		break;
	case "object":
		if (b == k) {
			c[w]("null");
			break
		}
		if (Qg(b)) {
			var d = b[F];
			c[w]("[");
			for (var e = "", g = 0; g < d; g++) c[w](e), e = b[g], jq(a, a.Jk ? a.Jk[L](b, qa(g), e) : e, c), e = ",";
			c[w]("]");
			break
		}
		c[w]("{");
		d = "";
		for (g in b) ia[G][Ed][L](b, g) && (e = b[g], "function" != typeof e && (c[w](d), kq(a, g, c), c[w](":"), jq(a, a.Jk ? a.Jk[L](b, g, e) : e, c), d = ","));
		c[w]("}");
		break;
	case "function":
		break;
	default:
		f(p("Unknown type: " + typeof b))
	}
}
var lq = {
	'"': '\\"',
	"\\": "\\\\",
	"/": "\\/",
	"\b": "\\b",
	"\f": "\\f",
	"\n": "\\n",
	"\r": "\\r",
	"\t": "\\t",
	"\x0B": "\\u000b"
}, mq = /\uffff/ [yb]("\uffff") ? /[\\\"\x00-\x1f\x7f-\uffff]/g : /[\\\"\x00-\x1f\x7f-\xff]/g;

function kq(a, b, c) {
	c[w]('"', b[z](mq, function (d) {
		if (d in lq) return lq[d];
		var e = d[Xd](0),
			g = "\\u";
		16 > e ? g += "000" : 256 > e ? g += "00" : 4096 > e && (g += "0");
		return lq[d] = g + e[bd](16)
	}), '"')
}

function nq() {}
nq[G].Tp = k;

function oq(a) {
	var b;
	if (!(b = a.Tp)) b = {}, pq(a) && (b[0] = j, b[1] = j), b = a.Tp = b;
	return b
}
var qq;

function rq() {}
R(rq, nq);

function sq(a) {
	return (a = pq(a)) ? new ActiveXObject(a) : new XMLHttpRequest
}

function pq(a) {
	if (!a.wr && "undefined" == typeof XMLHttpRequest && "undefined" != typeof ActiveXObject) {
		for (var b = ["MSXML2.XMLHTTP.6.0", "MSXML2.XMLHTTP.3.0", "MSXML2.XMLHTTP", "Microsoft.XMLHTTP"], c = 0; c < b[F]; c++) {
			var d = b[c];
			try {
				return new ActiveXObject(d), a.wr = d
			} catch (e) {}
		}
		f(p("Could not create ActiveXObject. ActiveX might be disabled, or MSXML might not be installed"))
	}
	return a.wr
}
qq = new rq;

function tq(a) {
	this.headers = new zi;
	this.nl = a || k
}
R(tq, Fl);
var uq = /^https?$/i,
	vq = [];

function wq(a) {
	a.s();
	Lh(vq, a)
}
O = tq[G];
O.Rb = m;
O.ha = k;
O.ll = k;
O.yn = "";
O.Xx = "";
O.gi = 0;
O.kk = "";
O.fm = m;
O.$j = m;
O.Tm = m;
O.Df = m;
O.al = 0;
O.Xf = k;
O.Jt = "";
O.wB = m;
O.send = function (a, b, c, d) {
	this.ha && f(p("[goog.net.XhrIo] Object is active with another request=" + this.yn + "; newUri=" + a));
	b = b ? b.toUpperCase() : "GET";
	this.yn = a;
	this.kk = "";
	this.gi = 0;
	this.Xx = b;
	this.fm = m;
	this.Rb = j;
	this.ha = this.nl ? sq(this.nl) : sq(qq);
	this.ll = this.nl ? oq(this.nl) : oq(qq);
	this.ha.onreadystatechange = P(this.et, this);
	try {
		this.Tm = j, this.ha[xb](b, a, j), this.Tm = m
	} catch (e) {
		xq(this, 5, e);
		return
	}
	a = c || "";
	var g = this.headers.Na();
	d && xi(d, function (l, r) {
		g.set(r, l)
	});
	d = Jg.FormData && a instanceof Jg.FormData;
	"POST" ==
		b && (!g.xd("Content-Type") && !d) && g.set("Content-Type", "application/x-www-form-urlencoded;charset=utf-8");
	xi(g, function (l, r) {
		this.ha.setRequestHeader(r, l)
	}, this);
	this.Jt && (this.ha.responseType = this.Jt);
	"withCredentials" in this.ha && (this.ha.withCredentials = this.wB);
	try {
		this.Xf && (Hl[Db](this.Xf), this.Xf = k), 0 < this.al && (this.Xf = Hl[qd](P(this.JA, this), this.al)), this.$j = j, this.ha.send(a), this.$j = m
	} catch (h) {
		xq(this, 5, h)
	}
};
O.JA = function () {
	"undefined" != typeof Ig && this.ha && (this.kk = "Timed out after " + this.al + "ms, aborting", this.gi = 8, this[A]("timeout"), this[od](8))
};

function xq(a, b, c) {
	a.Rb = m;
	a.ha && (a.Df = j, a.ha[od](), a.Df = m);
	a.kk = c;
	a.gi = b;
	yq(a);
	zq(a)
}

function yq(a) {
	a.fm || (a.fm = j, a[A]("complete"), a[A]("error"))
}
Za(O, function (a) {
	this.ha && this.Rb && (this.Rb = m, this.Df = j, this.ha[od](), this.Df = m, this.gi = a || 7, this[A]("complete"), this[A]("abort"), zq(this))
});
O.i = function () {
	this.ha && (this.Rb && (this.Rb = m, this.Df = j, this.ha[od](), this.Df = m), zq(this, j));
	tq.a.i[L](this)
};
O.et = function () {
	!this.Tm && !this.$j && !this.Df ? this.Un() : Aq(this)
};
O.Un = function () {
	Aq(this)
};

function Aq(a) {
	if (a.Rb && "undefined" != typeof Ig && (!a.ll[1] || !(4 == Bq(a) && 2 == Cq(a))))
		if (a.$j && 4 == Bq(a)) Hl[qd](P(a.et, a), 0);
		else if (a[A]("readystatechange"), 4 == Bq(a)) {
		a.Rb = m;
		try {
			var b = Cq(a),
				c, d;
			a: switch (b) {
			case 200:
			case 201:
			case 202:
			case 204:
			case 206:
			case 304:
			case 1223:
				d = j;
				break a;
			default:
				d = m
			}
			if (!(c = d)) {
				var e;
				if (e = 0 === b) {
					var g = Vj(qa(a.yn))[1] || k;
					if (!g && self[yd]) var h = self[yd][Td],
					g = h[Xc](0, h[F] - 1);
					e = !uq[yb](g ? g[Be]() : "")
				}
				c = e
			}
			c ? (a[A]("complete"), a[A]("success")) : (a.gi = 6, a.kk = a.Th() + " [" + Cq(a) + "]", yq(a))
		} finally {
			zq(a)
		}
	}
}

function zq(a, b) {
	if (a.ha) {
		var c = a.ha,
			d = a.ll[0] ? Ng : k;
		a.ha = k;
		a.ll = k;
		a.Xf && (Hl[Db](a.Xf), a.Xf = k);
		b || a[A]("ready");
		try {
			c.onreadystatechange = d
		} catch (e) {}
	}
}
O.Be = function () {
	return !!this.ha
};

function Bq(a) {
	return a.ha ? a.ha.readyState : 0
}

function Cq(a) {
	try {
		return 2 < Bq(a) ? a.ha[lc] : -1
	} catch (b) {
		return -1
	}
}
O.Th = function () {
	try {
		return 2 < Bq(this) ? this.ha.statusText : ""
	} catch (a) {
		return ""
	}
};
O.getResponseHeader = function (a) {
	return this.ha && 4 == Bq(this) ? this.ha[Fd](a) : i
};
pj(function (a) {
	tq[G].Un = a(tq[G].Un)
});

function Dq(a) {
	this.zw = a
}
R(Dq, uj);
Dq[G].rv = m;
Dq[G].Wu = function (a) {
	return Eq(this, a)
};

function Fq(a, b) {
	return (b ? "__wrapper_" : "__protected_") + Wg(a) + "__"
}

function Eq(a, b) {
	var c = Fq(a, j);
	b[c] || ((b[c] = Gq(a, b))[Fq(a, m)] = b);
	return b[c]
}

function Gq(a, b) {
	function c() {
		if (a.he) return b[he](this, arguments);
		try {
			return b[he](this, arguments)
		} catch (d) {
			a.zw(d), f(new Hq(d))
		} finally {}
	}
	a.rv && ij(15);
	c[Fq(a, m)] = b;
	return c
}

function Iq(a, b) {
	var c = Mg("window"),
		d = c[b];
	c[b] = function (e, g) {
		Sg(e) && (e = Q(bh, e));
		e = Eq(a, e);
		return d[L] ? d[L](this, e, g) : d(e, g)
	};
	c[b][Fq(a, m)] = d
}
Dq[G].i = function () {
	var a = Mg("window");
	a.setTimeout = a[qd][Fq(this, m)] || a[qd];
	a.setInterval = a[vd][Fq(this, m)] || a[vd];
	Dq.a.i[L](this)
};

function Hq(a) {
	dh[L](this, "Error in protected function: " + (a && a[Dd] ? qa(a[Dd]) : qa(a)));
	if ((a = (this.OB = a) && a[xd]) && Sg(a)) this.stack = a
}
R(Hq, dh);

function Jq(a, b, c) {
	this.iq = b || k;
	this.xB = Kq;
	this.vx = a;
	if (!c)
		if (U) hj(P(this.br, this), m, k);
		else {
			this.Kh = new Dq(P(this.br, this));
			Iq(this.Kh, "setTimeout");
			Iq(this.Kh, "setInterval");
			a = this.Kh;
			oj = j;
			b = P(a.Wu, a);
			for (c = 0; c < mj[F]; c++) mj[c](b);
			nj[w](a)
		}
}
R(Jq, Fl);

function Lq(a, b) {
	xj[L](this, Mq);
	this.error = a;
	this.RB = b
}
R(Lq, xj);
var Mq = "exception_" + Tj++;
Jq[G].Kh = k;

function Kq(a, b, c, d) {
	var e = new tq;
	vq[w](e);
	V(e, "ready", Q(wq, e));
	e.send(a, b, c, d)
}
Jq[G].br = function (a, b) {
	var c;
	c = Mg("window.location.href");
	if (Sg(a)) c = {
		message: a,
		name: "Unknown error",
		lineNumber: "Not available",
		fileName: c,
		stack: "Not available"
	};
	else {
		var d, e, g = m;
		try {
			d = a.lineNumber || a.by || "Not available"
		} catch (h) {
			d = "Not available", g = j
		}
		try {
			e = a[qe] || a.filename || a.sourceURL || c
		} catch (l) {
			e = "Not available", g = j
		}
		c = g || !a.lineNumber || !a[qe] || !a[xd] ? {
			message: a[Dd],
			name: a[Lc],
			lineNumber: d,
			fileName: e,
			stack: a[xd] || "Not available"
		} : a
	}
	d = b ? pi(b) : {};
	if (this.iq) try {
		this.iq(c, d)
	} catch (r) {}
	this.yo(c[Dd],
		c[qe], c.lineNumber, c[xd], d);
	try {
		this[A](new Lq(c, d))
	} catch (t) {}
};
Jq[G].yo = function (a, b, c, d, e) {
	try {
		var g = ak(this.vx, "script", b, "error", a, "line", c);
		a = {};
		a.trace = d;
		if (e)
			for (var h in e) a["context." + h] = e[h];
		d = [];
		for (var l in a) Zj(l, a[l], d);
		d[0] = "";
		this.xB(g, "POST", d[N](""), this.YB)
	} catch (r) {}
};
Jq[G].i = function () {
	wj(this.Kh);
	Jq.a.i[L](this)
};

function Nq() {
	Jq[L](this, gf, P(this.rz, this))
}
R(Nq, Jq);
Nq[G].rz = function (a, b) {
	var c = jh(a[qe]),
		d = !jh(a[qe]) && !wh(a[qe], "www.google.");
	b.Lx = !jh(a[qe]) && eh(a[qe], "chrome:") || c || d
};
Nq[G].yo = function (a, b, c, d, e) {
	(!e || !e.Lx) && Nq.a.yo[L](this, a, b, c, d, e)
};
var Oq = m;
Lj(n, "load", function () {
	Oq = j
});

function Pq(a, b) {
	function c() {
		V(q, "click", function (d) {
			var e = a(d);
			if (e) {
				e instanceof wa || (e = [e]);
				var g = m;
				for (d = d[K]; d; d = d[oe]) {
					for (var h = 0, l; l = e[h]; h++)
						if (d == l) {
							g = j;
							break
						}
					if (g) break
				}
				g || b()
			}
		})
	}
	Oq ? c() : Lj(n, "load", c)
}

function Qq(a, b, c, d) {
	var e = new sm(b),
		g = V(e, "key", function (h) {
			h[D] == a && (!d || d()) && c(h)
		});
	return function () {
		Oj(g);
		e.s()
	}
}

function Rq(a, b) {
	for (var c = a[K]; c;) {
		if (Kh(b, c)) return j;
		c = c[oe]
	}
	return m
}
var Sq = "alternate related self enclosure via feed canonical".split(" ");

function Tq(a) {
	for (var b = {}, c = 0; c < Sq[F]; c++) Sq[c] in a && (b[Sq[c]] = a[Sq[c]]);
	return b
}

function Uq(a, b) {
	b = b || 0;
	return function () {
		return a[he](this, wa[G][Hb][L](arguments, 0, b))
	}
}
var Vq = Ln() + 18E5,
	Wq, Xq;

function Yq(a) {
	Xq = a
}

function Zq() {
	this.wi = j;
	this.Ma = new tq;
	this.hC = j;
	this.Eu = 0;
	this.vs = m;
	V(this.Ma, "timeout", this.$y, m, this);
	V(this.Ma, "success", this.Zy, m, this);
	V(this.Ma, "error", this.Ws, m, this)
}
O = Zq[G];
O.$y = function () {
	this.Dd && this.Dd();
	this.Ma.s()
};
O.Zy = function (a) {
	$q(this, "END", m, j);
	ar(this);
	0 == this[lc] && jh(this[Eb]) ? this.Ws(a) : ("true" == this.Ma[Fd]("X-Reader-Google-Too-Many-Subscriptions-In-Stream-Graph") && n[qd](function () {
		br('Your account appears to have too many subscriptions. The "All items" view and unread counts may not be displayed correctly.', cr, i, i)
	}, 2E3), a = this.Ma[Fd]("X-Reader-Google-Version"), !jh(a) && Wq != a && (jh(Wq) ? Wq = a : n[qd](dr, 5E3)), a = this.Ma[Fd]("X-Reader-User"), ua && !jh(a) && a != ua ? (this.status = 701, a = zn('You have been signed out of Reader. <a href="%1">Sign back in.</a>',
		vn(j)), br(a, er, 60, i), this.Dd && this.Dd()) : (this.Ma.s(), this.hm && this.hm(this)))
};
O.Ws = function () {
	ar(this);
	var a = this.Ma[Fd]("X-Reader-User");
	if (401 == this[lc] || !jh(a) && a != ua) this.status = 701, a = zn('You have been signed out of Reader. <a href="%1">Sign back in.</a>', vn(j)), br(a, er, 60, i);
	if (400 == this[lc] && 1064 == this.Ma.Th()) fr(), br("Your account appears to have too many subscriptions, please remove some before creating any more.", er, i, i);
	else if ("true" == this.Ma[Fd]("X-Reader-Google-Bad-Token")) 5 <= this.Eu || (this.Eu++, Vq = 0, n[qd](P(this.Ic, this, this.ot, this.nt), 0));
	else {
		if (Xq && (a = this.Ma[Fd]("X-Reader-Captcha-Required"))) {
			Xq(a,
				P(this.Gz, this, a));
			return
		}
		"true" == this.Ma[Fd]("X-Reader-Google-Unverified-Email-Address") ? br('Your email address is not verified, please <a href="https://www.google.com/accounts/ResendVerifyEmail?service=reader">verify your email address</a>', er, 60, i) : (this.Ma.s(), this.Dd && this.Dd())
	}
};
O.Gz = function (a, b) {
	this.Ic(this.ot, this.nt + "&captchaToken=" + nh(a) + "&captchaAnswer=" + nh(b))
};

function gr(a, b) {
	a.vs = j;
	a.fy = b
}

function hr(a, b) {
	a.hm = b
}

function ir(a, b) {
	a.Dd = b
}
O.setTimeout = function (a) {
	this.zu = a
};

function ar(a) {
	a.status = Cq(a.Ma);
	var b;
	var c = a.Ma;
	try {
		b = c.ha ? c.ha.responseText : ""
	} catch (d) {
		b = ""
	}
	a.text = b;
	a.oA = a.Ma.Th()
}
O.ma = function (a) {
	jr(this, a, "GET", k)
};
O.Ic = function (a, b) {
	this.nt = b;
	var c = this;
	kr(function (d) {
		jr(c, a, "POST", b + "&T=" + nh(d))
	})
};

function jr(a, b, c, d) {
	a.Es = c;
	if (b) {
		a.ot = b;
		if (a.wi || lr) b = bk(b, "ck", Ln());
		b = bk(b, "client", "scroll");
		b = Qn(b);
		a.lB = b
	}
	a.zu && (a.Ma.al = s.max(0, a.zu));
	$q(a, a.Es);
	a.nA = Ln();
	a.Ma.send(a.lB, a.Es, d)
}
Za(O, function () {
	this.Ma[od]()
});
O.Th = function () {
	return this.oA
};

function $q(a, b, c, d) {
	b = Ln() - a.nA;
	d && a.vs && n[qd](Uq(Q(mr, a.fy, 1E3 * b)), 1E3)
}

function nr(a) {
	var b = new Zq;
	gr(b, Sf);
	ir(b, function () {
		a && a(_COMMAND_TOKEN)
	});
	hr(b, function (c) {
		_COMMAND_TOKEN = c[Eb];
		Vq = Ln() + 18E5;
		a && a(_COMMAND_TOKEN)
	});
	b.ma(Re)
}

function kr(a) {
	Ln() > Vq ? nr(a) : a && a(_COMMAND_TOKEN)
}

function or(a) {
	this.au = a
}

function pr(a, b) {
	return a.au ? 0 < (a.au["settings-notifier-state"] & b) : m
}
var qr;

function rr(a) {
	qr = new sr;
	tr(qr, function () {
		ur(function () {
			var b = new or(vr(qr));
			pr(b, 1) || pr(b, 2) ? $[Ic]() : $.Eq();
			wr[Ic]();
			op[Ic]();
			xr[Ic]();
			qr.na = m;
			yr.an = m
		})
	});
	a && "function" == typeof a && tr(qr, a)
}

function sr() {
	this.na = m;
	this.pr = []
}

function zr(a, b, c, d) {
	b[je] && "a" == b[je][Be]() && jb(b, bk("/settings", "display", c));
	return V(b, "click", function (e) {
		e[Zb]();
		Ar(qr, c);
		d && d()
	})
}

function Ar(a, b) {
	if (!a.na) {
		a.na = j;
		yr.an = j;
		vr(a) && Hk(vr(a)[oe]);
		Br(n, "settings-frame", Qn("/settings?mode=nochrome"));
		var c = 0,
			d = n[vd](function () {
				c++;
				var e = vr(a);
				if (800 <= c || e) b && (e["settings-initial-display"] = b), e.hideCallbacks = a.pr, n.clearInterval(d)
			}, 50);
		Cr()
	}
}

function vr() {
	return X("settings-frame")
}

function tr(a, b) {
	a.pr[w](b)
}

function Br(a, b, c) {
	var d = X(b, a[rd]);
	d || (d = (new nk(a[rd])).ol("div"), a[rd][J][v](d), u(d, '<iframe id="' + b + '" name="' + b + '" src="' + c + '" frameborder="0" scrolling=no></iframe>'), d = X(b, a[rd]));
	return d
}

function Dr() {}
Dr[G].yc = function () {
	return this.pb
};

function Er(a) {
	this.pb = a[Ob];
	this.Fv = a[Mc];
	this.Qu = a[Md]
}
R(Er, Dr);

function Fr() {
	this.Ui = k
}
O = Fr[G];
bb(O, function () {
	return this.Q
});
O.Vc = function () {
	return this.h
};
O.Sj = function () {
	if (!Lg(this.mh)) {
		var a = In(this.vd, j) || "";
		this.mh = Ah(a, 200, j)
	}
	return this.mh
};

function Gr(a, b) {
	var c = a.Nd[b];
	return c && 0 < c[F] ? c[0] : k
}
O.zc = function (a) {
	return (a = Gr(this, a)) ? a.Cf : k
};

function Hr(a) {
	return a.zc("canonical") || a.zc("alternate")
}

function Ir(a, b, c) {
	Jr(bk("/api/0/shorten-url", "i", a.Q), function (d) {
		b(d.url)
	}, c)
}
O.sf = function () {
	return this.Dl
};

function Kr(a, b) {
	for (var c = 0; c < a.ld[F]; c++)
		if (a.ld[c].W(b)) return j;
	return m
}

function Lr(a, b) {
	if (Kr(a, b)) return m;
	a.ld[w](b);
	a.Ui && a.Ui(b, k);
	return j
}

function Mr(a, b) {
	for (var c = -1, d = 0; d < a.ld[F]; d++)
		if (a.ld[d].W(b)) {
			c = d;
			break
		}
	return 0 <= c ? (Dh[we][L](a.ld, c, 1), a.Ui && a.Ui(k, b), j) : m
}
O.ei = function () {
	return Kr(this, Fp(Z))
};
O.isReadStateLocked = function () {
	return this.wz
};
O.Gc = function () {
	return this.Vr
};

function Nr(a) {
	var b = Ck("div");
	try {
		u(b, a.vd)
	} catch (c) {
		if (U) try {
			u(b, a.vd[z]("<li", "<ul><li"))
		} catch (d) {}
	}
	return b
}

function Or() {}
O = Or[G];
bb(O, function () {
	return this.Q
});
O.Vc = function () {
	return this.h
};
O.wm = function () {
	return this.cw
};
O.zc = function (a) {
	return a in this.Nd ? this.Nd[a].Cf : k
};
O.wf = function () {
	return this.ia[F]
};
O.sf = function () {
	return this.Dl
};
O.Qh = function () {
	return this.ia
};

function Pr(a, b) {
	this.Ui = k;
	this.Q = a.id;
	this.Iw = b;
	var c;
	var d = a[id];
	if (!d || !wh(d, "<a ")) c = d;
	else {
		c = Ck("div");
		u(c, d);
		for (var d = Oh(c[Tc]("a")), e = 0, g; g = d[e]; e++) {
			for (var h = Ck("span"); g[uc];) {
				var l = g[uc];
				g[Hd](l);
				h[v](l)
			}
			g[oe][Bb](h, g)
		}
		c = c[Qb]
	}
	this.h = c;
	this.sz = new Date(1E3 * a.published);
	this.EC = new Date(1E3 * a.updated);
	if (a[rb]) {
		d = Bo(a[rb][C]);
		this.cc = {
			d: d,
			h: a[rb][id],
			Yj: a[rb].htmlUrl
		};
		this.kj = [];
		for (c = 0; e = a.annotations[c]; c++) this.kj[w](new Er(e));
		d.K.Ha && (c = io(d), this.Vr = vp(c, $o(Z, "post")), this.Mx = vp(c,
			$o(Z, "link")))
	}
	c = a[Mc];
	!jh(c) && (wh(c, "<") && wh(c, ">")) && (c = In(c));
	this.Dl = ph(c);
	this.ld = [];
	if (a[Kc])
		for (c = 0; c < a[Kc][F]; c++) try {
			this.ld[w](To(a[Kc][c]))
		} catch (r) {}
	this.Nd = {};
	this.lp = [];
	var d = Tq(a),
		t;
	for (t in d)
		if (e = d[t], 0 != e[F]) {
			this.Nd[t] = [];
			for (c = 0; c < e[F]; c++) g = {
				Cf: e[c][ae],
				sc: e[c][E]
			}, e[c][C] && (g.d = Bo(e[c][C])), this.Nd[t][w](g);
			if ("via" == t)
				for (c = 0; c < e[F]; c++) {
					a: if (g = e[c], wh(g[ae], "http://www.google.com" + Xe)) {
						try {
							var y = Bo(g[ae][z]("http://www.google.com" + Xe, ""))
						} catch (H) {
							g = k;
							break a
						}
						g = ph(g[id]);
						g = {
							d: y,
							h: g
						}
					} else g = k;
					g && this.lp[w](g)
				}
		}(t = a[Ob] || a.summary) && (this.h ? vh(hh(this.h)) : "") != (t[Ob] ? vh(hh(t[Ob])) : "") ? (this.Qp = t[sb], this.vd = t[Ob]) : (this.Qp = "ltr", this.vd = "");
	this.We = a.timestampUsec || a.crawlTimeMsec + "000";
	this.wz = !ua || a[ac]
}
R(Pr, Fr);

function Qr(a, b) {
	this.Q = a.id;
	this.SB = a[sb];
	this.h = a[id];
	this.cw = a[ve];
	this.Tv = a.continuation;
	this.DC = new Date(1E3 * a.updated);
	this.Dl = ph(a[Mc]);
	this.ia = [];
	for (var c = 0; c < a[Nc][F]; c++) this.ia[w](new Pr(a[Nc][c], b));
	this.Nd = {};
	var c = Tq(a),
		d;
	for (d in c) {
		var e = c[d];
		0 != e[F] && (this.Nd[d] = {
			Cf: e[0][ae],
			sc: e[0][E]
		})
	}
}
R(Qr, Or);
var Rr = 1;

function Cr() {
	Rr++;
	T(X("loading-area-container"), "hidden");
	S(q[J], "loading")
}

function fr() {
	0 < Rr && Rr--;
	0 == Rr && (S(X("loading-area-container"), "hidden"), T(q[J], "loading"))
}
Kg("FR_Loading_hide", fr, i);
var Sr, Tr;

function br(a, b, c) {
	Sr && n[Db](Sr);
	var d = X("message-area");
	Tr && T(d, Tr[ld]);
	S(d, b[ld], "jfk-butterBar-shown");
	Tr = b;
	u(d, a);
	b != Ur && (Sr = n[qd](function () {
		T(d, "jfk-butterBar-shown")
	}, 1E3 * (c || 7)))
}
var cr = {
	className: "jfk-butterBar-info"
}, Ur = {
		className: "jfk-butterBar-promo"
	}, er = {
		className: "jfk-butterBar-error"
	};

function Vr(a) {
	a = Gr(a, "enclosure");
	if (a == k) return m;
	var b = a.sc;
	return !a.Cf || !b ? m : "application/x-shockwave-flash" == b
}

function Wr(a, b, c, d) {
	jb(a, So(b, d));
	b = Q(Xr, b, c);
	return V(a, "click", b)
}

function Xr(a, b, c) {
	c[Zb]();
	b && b();
	fq(a)
}
var Yr = k;

function Zr(a) {
	Yr || (Yr = q[id]);
	Wa(q, Yr + (a ? " " + a : ""))
}
var $r = {
	400: "The feed being requested cannot be found.",
	401: 'You have been signed out of Reader. <a href="%1">Sign back in.</a>',
	403: "You don&#39;t have permission to view this feed.",
	404: "The feed being requested cannot be found.",
	500: "Sorry, an unexpected condition has occurred which is preventing Google Reader from fulfilling the request."
};
$r[701] = zn('You have been signed out of Reader. <a href="%1">Sign back in.</a>', vn(j));

function as(a, b, c) {
	var d = b.Ra;
	if (d === k) {
		var e = hp(a, Fp(Z));
		if (Jo(a)) a = "Your search - " + (ph(a.gb()) + " - did not match any items."), c(a, m, m);
		else if (a.K.Ha && a.$b()) b = e ? Cp : Bp, c(pp(io(a), b), e, m);
		else {
			var g = e ? "&quot;%1&quot; has no unread items." : "&quot;%1&quot; has no items.",
				h = "rtl" == q[J][Rd]("dir") ? -1 : 1;
			rp.Vc(a, b, function (l) {
				for (var r = i, t = r = 0, y = m, H = l[td](Qm), Ha = 0; Ha < H[F]; Ha++) {
					var ga = H[Ha];
					Om[yb](ga) ? (r++, t++) : Pm[yb](ga) ? y = j : Nm[yb](ga) ? t++ : Rm[yb](ga) && (y = j)
				}
				r = 0 == t ? y ? 1 : 0 : 0.4 < r / t ? -1 : 1;
				c(zn(g, 0 == r || r ==
					h ? l : 1 == r ? "\u202a" + l + "\u202c\u200f" : "\u202b" + l + "\u202c\u200e"), e, m)
			})
		}
	} else c($r[d] || $r[500], m, j)
}

function bs() {
	var a = ua;
	"true" == cs(If) && da && (a = da);
	return Pn(An(hf + a))
}

function ds(a, b) {
	if (U && ej("7")) {
		var c = {
			_message: a,
			_initialValue: b,
			_newValue: k
		};
		n.showModalDialog("/ui/2832119630-en-prompt?hl=en", c, "dialogHeight:140px;dialogWidth:400px;scroll:no;status:no;unadorned:yes");
		return c._newValue
	}
	return n.prompt(a, b)
}

function es(a, b) {
	var c = Ck("span");
	u(c, a);
	for (var c = c[Tc]("dl"), d = "", e = "", g = 0; g < c[F]; g++)
		for (var h = c[g][uc]; h; h = h[Oc])
			if ("dt" == h[fc][Be]() && (d = h[Qb]), "dd" == h[fc][Be]() && (e = h[Qb], d in b)) b[d](d, e)
}

function fs(a, b, c) {
	u(a, c);
	T(a, "hidden")
}

function gs(a) {
	var b = [],
		c = tn(a);
	a = c["feed-result-row"];
	var d = c.result,
		e = c.subscribe,
		g = c["result-title"],
		h = c.view,
		l = c.unsubscribe,
		r = c["folder-chooser"],
		c = c.dismiss;
	if (a)
		for (var t = 0, y; y = a[t]; t++) b[w]({
			Iz: y,
			Lk: d[t],
			uu: e[t],
			Su: h[t],
			Mu: l[t],
			Qq: r[t],
			Au: g[t],
			ew: c ? c[t] : k
		});
	return b
}

function hs(a) {
	var b = U ? 'To start using this bookmarklet, please right-click on this link and choose "Add to favorites".' : "To start using this bookmarklet, please drag this link to your browser's toolbar.";
	V(a, "click", function (c) {
		ja(b);
		c[wd]();
		c[Zb]()
	})
}

function is(a) {
	function b(d) {
		S(c, d)
	}
	var c = a || q[J];
	U && (b("ie"), 8 == c[Gd][de] ? b("ie8") : 7 == c[Gd][de] ? b("ie7") : ej("8") ? b("ie8") : ej("7") ? b("ie7") : ej("6") && b("ie6"));
	Qi && b("opera");
	Ri && (b("gecko"), ej("1.9.1") && b("gecko191"));
	Si && b("webkit")
}
var js = 0;

function dr() {
	36E5 > Ln() - js || (js = Ln(), br('An updated version of Google Reader is available. <span class="link" id="new-version-refresh">Refresh</span>', cr, 30, i), nb(X("new-version-refresh"), function () {
		n[yd].reload(j)
	}))
}
var ks;

function ls() {
	Lg(ks) || (ks = !! ("gbar" in n && gbar.qfgq && gbar.qfgq()));
	return ks
}

function ms() {
	this.ba = k
}
ms[G].fa = function (a, b, c) {
	return this.ba = "a" == a.Fk ? new ns(a, b) : a instanceof bo ? new os(a, a.Tf, b) : new ps(a, b, c)
};
var qs = new ms;

function ps(a, b, c) {
	this.d = a;
	this.nm = b || 0;
	this.ut = c || 0;
	this.hc = [];
	this.Hw = 2;
	this.le = [];
	this.wg = {};
	this.Ra = this.Cb = k;
	this.Lj = [];
	this.em = j
}
O = ps[G];
O.Dg = function () {
	return bp(this.d) && this.d.Gf ? m : this.Ra === k && (0 == this.hc[F] || rs(this) != k)
};

function rs(a) {
	if (0 == a.hc[F]) return k;
	a = a.hc[a.hc[F] - 1];
	return a == k ? k : a.Tv
}

function ss(a, b, c) {
	a.Cb = new Zq;
	hr(a.Cb, function () {
		var d = ts(a.Cb[Eb], a.d[C]),
			e = new Qr(d, a.d);
		a.Ap(e);
		a.hc[w](e);
		for (var d = Fp(Z), g = hp(a.g(), d), e = e.Qh(), h = 0; h < e[F]; h++) {
			var l = e[h],
				r = l[Id]();
			if (!(r in a.wg) && (!g || !Kr(l, d))) a.wg[r] = a.le[F], a.le[w](l)
		}
		a.Ra = k;
		a.Cb = k;
		c()
	});
	ir(a.Cb, function () {
		a.Ra = a.Cb[lc];
		a.Cb = k;
		403 != a.Ra && 701 != a.Ra && br("Oops...an error occurred. Please try again in a few seconds.", er, i, i);
		c()
	});
	a.gm(b, c)
}
O.gm = function () {
	var a = Oo(this.g()),
		a = us(this, a),
		b = rs(this);
	b != k && (a = bk(a, "c", b));
	if (this.nm) {
		var c = this.nm;
		this.Ph() && (c *= this.Hw);
		a = bk(a, "n", c)
	}
	b == k && this.g().ys && (a = bk(a, "refresh", "true"));
	gr(this.Cb, "stream-contents-fetch");
	this.Cb.ma(a)
};

function us(a, b) {
	a.em || (b = bk(b, "freshness", "false"));
	return b
}
O.Ap = function (a) {
	if (0 == this.hc[F] && a != k) {
		var b = this.g();
		b.K.Ha && (b = io(b), a = a.sf(), Ap[b[Md]] = a)
	}
};
O.g = function () {
	return this.d
};
Za(O, function () {
	this.Cb && this.Cb[od]();
	this.up = j
});
mb(O, function () {
	this.up = m
});
O.Uc = function (a, b, c) {
	if (!this.up) {
		var d = this;
		if (0 > a) b(k);
		else if (a < this.le[F]) b(this.le[a]), !c && (0 < this.ut && this.Cb == k && this.Dg() && this.le[F] - a <= this.ut) && this.Uc(this.le[F], function () {}, j);
		else if (this.Dg())
			if (this.Cb != k) this.Lj[w]({
				zr: a,
				mg: b,
				Ps: c
			});
			else this.Lj = [{
				zr: a,
				mg: b,
				Ps: c
			}], ss(this, a, function () {
				d.mm();
				var e = d.Lj;
				d.Lj = [];
				for (var g = 0, h; h = e[g]; g++) d.Uc(h.zr, h.mg, h.Ps)
			});
			else b(k)
	}
};
O.Ph = function () {
	return this.le[F]
};
O.mm = function () {};
O.Vq = function (a) {
	a = a[Id]();
	return a in this.wg ? this.wg[a] : -1
};
O.yf = function (a) {
	var b = this;
	this.ti(function () {
		b.Ra === k ? a(b.hc[0].Vc()) : a(k)
	})
};
O.Bm = function (a) {
	var b = this;
	this.ti(function () {
		b.Ra === k ? a(b.hc[0].zc("alternate")) : a(k)
	})
};
O.wm = function (a) {
	var b = this;
	this.ti(function () {
		b.Ra === k ? a(b.hc[0].wm()) : a(k)
	})
};
O.ti = function (a) {
	0 == this.hc[F] && this.Ra === k ? n[qd](P(this.ti, this, a), 50) : (this.hc[0] || this.Ra !== k) && a()
};

function vs(a, b, c) {
	this.d = a;
	this.h = b;
	this.ia = c
}
O = vs[G];
O.Ph = function () {
	return this.ia[F]
};
O.Dg = function () {
	return m
};
O.Uc = function (a, b) {
	0 > a || a >= this.ia[F] ? b(k) : b(this.ia[a])
};
O.Bm = function (a) {
	a(k)
};
O.yf = function (a) {
	a(this.h)
};
Za(O, function () {});
mb(O, function () {});

function ws(a, b, c) {
	ps[L](this, a, b, c);
	this.Ym = this.Cl = m;
	this.qb = k;
	this.Mj = this.qf = 0
}
R(ws, ps);
ws[G].Dg = function () {
	if (bp(this.d) && this.d.Gf) return m;
	if (!this.Cl || this.Ym) return j;
	if (this.qb === k || 0 == this.qb[F] || this.Ra) return m;
	if (0 == this.hc[F] || this.qf < this.qb[F]) return j
};
ws[G].gm = function (a, b) {
	if (this.Ra === k)
		if (this.Cl) {
			if (this.qb !== k)
				if (0 == this.qb[F]) this.Cb = k, b();
				else {
					var c = this.nm;
					c && this.Ph() && (c *= 2);
					var d = this.qf,
						e = d + c;
					e >= this.qb[F] && (e = this.qb[F]);
					this.Mj = e - d;
					for (var g = [], c = [], h = [], l = {}, r = []; d < e; d++) {
						g[w](this.qb[d].id);
						var t = [];
						if (this.qb[d].directStreamIds)
							for (var y = 0; y < this.qb[d].directStreamIds[F]; ++y) {
								var H = this.qb[d].directStreamIds[y];
								if (!(H in l)) {
									var Ha = c[F];
									c[w](nh(H));
									l[H] = Ha
								}
								t[w](l[H])
							}
						0 == t[F] ? h[w]("-1") : h[w](t[N](","));
						r[w](this.qb[d].timestampUsec ||
							0)
					}
					e = "i=" + g[N]("&i=");
					0 < c[F] && (e += "&s=" + c[N]("&s=") + "&indexes=" + h[N]("&indexes="));
					e += "&it=" + r[N]("&it=");
					Jo(this.d) || (e += "&rs=" + nh(this.d[C]));
					e = Ro(this.d, e);
					c = us(this, "/api/0/stream/items/contents");
					this.Cb.Ic(c, e)
				}
		} else {
			this.Ym = this.Cl = j;
			var ga = this;
			this.ss(function () {
				ga.Ym = m;
				ga.gm(a, b)
			})
		} else b(k)
};
ws[G].mm = function () {
	this.Ra || (this.qf += this.Mj)
};

function ns(a, b) {
	ws[L](this, a, b)
}
R(ns, ws);
ns[G].ss = function (a) {
	this.oq = On("deb");
	var b = Po(this.g(), m, this.oq),
		b = bk(b, "n", 1E3);
	bp(this.g()) && (b = bk(b, "merge", "true"));
	var c = this;
	Jr(b, function (d) {
		c.qb = d.itemRefs;
		a()
	}, function () {
		c.Ra = 500;
		a()
	})
};
ns[G].mm = function () {
	if (!this.Ra) {
		if (this.oq)
			for (var a = this.qf, b = a + this.Mj; a < b; a++) {
				var c = this.qb[a];
				c.rankingDebug && (c.externalId && c.externalId in this.wg) && (this.le[this.wg[c.externalId]].Xv = c.rankingDebug)
			}
		this.qf += this.Mj
	}
};

function os(a, b, c) {
	ws[L](this, a, c);
	this.Nb = a.gb();
	this.ko = {
		query: this.Nb,
		Gu: 0,
		bm: 0
	};
	this.Tf = b || []
}
R(os, ws);
O = os[G];
O.Yq = function (a) {
	this.qb === k && this.Ra === k ? n[qd](P(this.Yq, this, a), 50) : a(this.ko)
};
O.ss = function (a) {
	this.BC = Ln();
	for (var b = bk("/api/0/search/items/ids", "q", this.Nb), b = bk(b, "num", 1E3), c = 0, d; d = this.Tf[c]; c++) b = bk(b, "s", d[C]);
	var e = this;
	Jr(b, function (g) {
		g = g.results;
		e.ko.Gu = 1E3 <= g[F] ? "thousands" : g[F];
		e.ko.bm = 0;
		e.qb = g;
		a()
	}, function () {
		e.Ra = 500;
		a()
	})
};
O.Ap = function () {};
O.yf = function (a) {
	a(xs({
		query: this.g().gb()
	}))
};
O.Bm = function (a) {
	a(k)
};
Za(O, function () {});
var ys, zs, As, Bs;
Bs = As = zs = ys = m;
var Cs = Mi();
Cs && (-1 != Cs[cc]("Firefox") || -1 != Cs[cc]("Camino") || (-1 != Cs[cc]("iPhone") || -1 != Cs[cc]("iPod") ? ys = j : -1 != Cs[cc]("iPad") ? zs = j : -1 != Cs[cc]("Android") ? As = j : -1 != Cs[cc]("Chrome") && (Bs = j)));
var Ds = ys,
	Es = zs,
	lr = As,
	Fs = Bs;

function Gs(a, b, c) {
	var d = a.ld;
	a = {};
	for (var e = 0, g; g = d[e]; e++) a[ko(g)] = j;
	d = [];
	for (e = 0; g = b[e]; e++) ko(g) in a || d[w](g);
	b = [];
	for (e = 0; g = c[e]; e++) ko(g) in a && b[w](g);
	return {
		sd: d,
		Rd: b
	}
}

function Hs(a, b, c, d, e, g) {
	var h = Gs(a, b, c);
	0 == h.sd[F] && 0 == h.Rd[F] ? e && e() : (b = h.sd, c = h.Rd, Is(a, b, c), (new Js(a.cc.d[C], a[Id](), b, c, d))[Cb](e, function () {
		Is(a, c, b);
		g && g()
	}))
}
var Ks = [];

function Ls(a) {
	Ks[w](a)
}

function Is(a, b, c) {
	for (var d = Fp(Z), e = m, g = m, h = 0, l; l = Ks[h]; h++) l(a, b, c);
	for (h = 0; l = b[h]; h++) l.W(d) && (e = j), Lr(a, l);
	for (h = 0; l = c[h]; h++) l.W(d) && (g = j), Mr(a, l);
	if (xr && (e || g)) b = function () {
		e && Ms(xr, a, -1);
		g && Ms(xr, a, 1)
	}, xr.Zc ? b() : xr.ji && xr.Qa(b)
}
var Ns = {
	yB: {
		bd: "All items",
		nd: 0
	},
	FB: {
		bd: "a day",
		nd: 864E5
	},
	EB: {
		bd: "a week",
		nd: 6048E5
	},
	GB: {
		bd: "two weeks",
		nd: 12096E5
	}
};

function Os(a) {
	op ? op.Qa(function (b) {
		a(0 < b[F])
	}) : Jr(Oe, function (b) {
		a(0 < b[kd][F])
	})
}
var Ps = k;

function Qs(a, b) {
	if (ua)
		if (a.$b()) b(j);
		else {
			if (!Ps || !Ps(a, b)) {
				var c = new Zq;
				hr(c, function (e) {
					b("true" == e[Eb])
				});
				var d = bk(Se, "s", a[C]);
				c.ma(d)
			}
		} else b(m)
}

function ts(a, b) {
	try {
		return "JSON" in n && JSON.parse ? JSON.parse(a) : eval("(" + a + ")")
	} catch (c) {
		var d = a;
		256 < d[F] && (d = d[be](0, 256));
		Rs(hg, (b || "") + " " + d + " (" + c + ")");
		return k
	}
}

function Jr(a, b, c, d) {
	if (d && n[d]) b(n[d]), n[d] = k;
	else {
		var e = bk(a, "output", "json"),
			g = new Zq;
		hr(g, function () {
			var h = ts(g[Eb], e);
			h ? b(h) : c && c()
		});
		c && (g.Dd = c);
		g.ma(e)
	}
}

function Ss(a, b, c, d) {
	a = d && 0 != d.nd ? zn("Are you sure you want to mark all items older than %1 from %2 as read?", [d.bd, a]) : zn(1E3 > b ? "Are you sure you want to mark %1 items from %2 as read?" : "Are you sure you want to mark more than %1 items from %2 as read?", [b, a]);
	c(confirm(a))
}

function Ts(a, b, c, d, e, g, h, l) {
	function r() {
		var t = new Us(a[C], c, l);
		b && (t.zs = b);
		t[Cb](d, h)
	}
	xr ? xr.xe(a, function (t) {
		50 < t ? (e || Ss)(c, t, function (y) {
			y ? r() : g && g()
		}, l) : r()
	}) : r()
}

function Vs(a) {
	var b = [];
	a = a.ld;
	for (var c = 0, d; d = a[c]; c++) d[E] == lf && !Lo(d) && b[w](d);
	return b
}

function mr(a, b, c, d) {
	if (ua || d) b = b || 1, s.random() > (c || 0.05) || (c = gg, Ri ? c = Yf : U ? c = ej("8") ? bg : ej("7") ? ag : ej("6") ? $f : Zf : Si ? c = Fs ? eg : lr ? dg : cg : Qi && (c = fg), d = "opmsg", "number" == typeof b && (b = s[Gb](b), d = "opusec"), (new Zq).Ic(jf, Mn([
		["op", a],
		[d, b],
		["browser", c]
	])))
}

function Ws(a, b, c) {
	ua ? (b = gp(Z, b), Hs(a, [b], [], i, c)) : c && c()
}

function jo(a) {
	for (; - 1 != a[Kd](De);) a = a[z](De, " ");
	return a
}

function Xs(a) {
	604800 > Ln() / 1E3 - ra ? a(j) : Os(function (b) {
		a(!b)
	})
}

function Rs(a, b) {
	(new Image).src = ak(ff, "src", "scroll", "u", ua, "type", a, "msg", b, "ck", Ln())
}

function Ys(a, b, c, d) {
	var e = new Zq;
	hr(e, function () {
		if (b) {
			var g = e[Eb][td]("#");
			c(g[0], g[1])
		} else c(oa(e[Eb], 10))
	});
	d && (e.Dd = d);
	a = ak(Je, "s", ko(a), "a", b);
	e.ma(a)
}
var Zs;

function $s() {
	Zs || (Zs = [Fp(Z)]);
	return Zs
}
var at = {
	vi: {
		Hb: "item-star-active star link",
		ne: function () {
			return [Yo(Z)]
		},
		re: function () {
			return []
		},
		h: "Remove star"
	},
	ri: {
		Hb: "item-star star link",
		ne: function () {
			return []
		},
		re: function () {
			return [Yo(Z)]
		},
		h: "Add star"
	},
	cj: function () {
		return Yo(Z)
	}
}, bt = {
		vi: {
			Hb: "read-state-read read-state link",
			ne: $s,
			re: function () {
				return [Gp(Z)]
			},
			Je: "Mark as read",
			h: "Mark as read"
		},
		ri: {
			Hb: "read-state-unread read-state link",
			ne: function () {
				return [Gp(Z)]
			},
			re: $s,
			Je: "Mark as read",
			h: "Mark as read"
		},
		cj: function () {
			return Fp(Z)
		}
	}, ct = {
		vi: {
			Hb: "read-state-kept-unread read-state link",
			ne: function () {
				return [Gp(Z)]
			},
			re: $s,
			Je: "Keep unread",
			h: "Keep unread"
		},
		ri: {
			Hb: "read-state-not-kept-unread read-state link",
			ne: $s,
			re: function () {
				return [Gp(Z)]
			},
			Je: "Keep unread",
			h: "Keep unread"
		},
		cj: function () {
			return Gp(Z)
		}
	}, dt = {
		vi: {
			Hb: "dislike-active dislike link",
			ne: function () {
				return [fp(Z)]
			},
			re: function () {
				return []
			},
			Je: "Not interested",
			h: "Not interested"
		},
		ri: {
			Hb: "dislike-inactive dislike link",
			ne: function () {
				return []
			},
			re: function () {
				return [fp(Z)]
			},
			Je: "Not interested",
			h: "Not interested"
		},
		cj: function () {
			return fp(Z)
		}
	};

function et(a, b, c) {
	this.o = b;
	this.B = a;
	this.qi = c;
	this.Kx = a && Zh(a, "empty");
	this.B && (this.Jf && Oj(this.Jf), this.Jf = V(this.B, "click", this[$c], m, this));
	this.o.af || (this.o.af = []);
	this.o.af[w](this);
	this.Xe()
}
et[G].s = function () {
	this.Jf && Oj(this.Jf);
	Lh(this.o.af, this);
	0 == this.o.af[F] && delete this.o.af
};
Ta(et[G], function (a) {
	function b() {
		if (c.o.af)
			for (var h = 0, l; l = c.o.af[h]; h++) l.Xe()
	}
	a && a[Zb]();
	var c = this,
		d = ft(this, j);
	a = d.ne();
	var d = d.re(),
		e = i;
	if (0 == a[F] && 1 == d[F]) {
		var g = this.o.Iw;
		g.K.Ha && io(g).W(d[0]) && (e = this.o.We)
	}
	Hs(this.o, a, d, e, i, b);
	b()
});
et[G].Xe = function () {
	if (this.B) {
		var a = ft(this);
		Ya(this.B, a.Hb + " unselectable");
		if (this.Kx) S(this.B, "empty");
		else try {
			a.Je && this.B[Qb] != a.Je && u(this.B, a.Je), a.h && this.B[id] != a.h && Wa(this.B, a.h)
		} catch (b) {}
	}
	this.jt && this.jt()
};

function ft(a, b) {
	return Kr(a.o, a.qi.cj()) ? b ? a.qi.ri : a.qi.vi : b ? a.qi.vi : a.qi.ri
}

function gt(a, b) {
	et[L](this, a, b, at)
}
R(gt, et);

function ht(a, b) {
	et[L](this, a, b, bt)
}
R(ht, et);

function it(a, b) {
	et[L](this, a, b, ct)
}
R(it, et);

function jt(a, b) {
	et[L](this, a, b, dt)
}
R(jt, et);

function kt(a, b) {
	var c = vh("Are you sure you&#39;d like to delete the selected tags?"),
		d = k;
	1 == a[F] && (d = wp(To(a[0])), c = zn(vh("Are you sure you&#39;d like to delete your &quot;%1&quot; tag?"), d));
	lt(c, function () {
		(new mt(a, d))[Cb](b)
	})
}

function nt(a, b, c) {
	b = new ot(a[C], b);
	b.$e[w](["source", Rf]);
	b[Cb](function () {
		c();
		(new pt(a))[Cb]()
	})
}

function qt(a, b, c, d) {
	a = ak(Ie, "s", a[C], "tz", -(new Date).getTimezoneOffset(), "fetchTrends", d ? "false" : "true");
	Jr(a, b, c)
}
var rt = {};

function st(a, b, c) {
	function d(h) {
		for (var l = [], r = {}, t = 0, y; y = h[t]; t++)!(y[C] in r) && !op.hb(y) && (r[y[C]] = 1, l[w](y));
		return l
	}

	function e(h) {
		a.K.Ha ? tt(op, io(a), function (l) {
			0 < l[F] ? h(Hh(l, function (r) {
				return r.d
			})) : h([a])
		}) : h([a])
	}
	if (a[C] in rt) c(d(rt[a[C]]));
	else {
		var g = bk(Ke, "n", s[Gb](1.5 * b));
		e(function (h) {
			for (var l = 0, r; r = h[l]; l++) {
				r = bk(g, "s", r[C]);
				if (1948 < r[F]) break;
				g = r
			}
			Jr(g, function (t) {
				t = Hh(t.recs, function (y) {
					return new cp(y[C], y[Rc], y[id])
				});
				rt[a[C]] = t;
				c(d(t))
			}, Q(c, []))
		})
	}
}

function ut(a, b, c) {
	return function () {
		vt(a, b, c);
		return m
	}
}

function vt(a, b, c, d) {
	function e() {
		(new wt(a, b))[Cb](c)
	}
	d ? e() : (d = a instanceof wa && 1 < a[F] ? "Are you sure you&#39;d like to unsubscribe from these feeds?" : zn("Are you sure you&#39;d like to unsubscribe from &quot;%1&quot;?", b), lt(vh(d), e))
}

function xt(a, b, c, d) {
	(new yt(a, b.sd, b.Rd, c))[Cb](d)
}

function zt(a, b) {
	if (a.Hg()) {
		var c = X("auto-discovery");
		if (c) {
			var d = c[ae];
			if (d == An(Jo(a) ? k : Ko(a, Xe)) || d == An(Mo(a))) return;
			Hk(c)
		}
		rp.Vc(a, b, function (e) {
			c = Ck("link", {
				rel: "alternate",
				id: "auto-discovery",
				type: "application/atom+xml",
				href: Mo(a),
				title: e
			});
			q[Tc]("head")[0][v](c)
		})
	}
}
var At = {}, Bt = m;

function Ct(a, b, c) {
	Bt ? b(At[a.id] || a["default"]) : c ? b(a["default"]) : n[qd](function () {
		Ct(a, b)
	}, 50)
}

function cs(a) {
	var b = a["default"];
	Ct(a, function (c) {
		b = c
	}, j);
	return b
}

function Dt(a) {
	Bt || Jr(He, function (b) {
		for (var c = 0, d; d = b.prefs[c]; c++) At[d.id] = d[Yb];
		Bt = j;
		a && a()
	}, i, "_STREAM_LIST_PREFS")
}

function ur(a) {
	Bt = m;
	Dt(a)
}

function Et(a, b, c) {
	At[a.id] = b;
	var d = new Zq;
	hr(d, function () {
		c && c()
	});
	ir(d, function () {
		br("Oops...an error occurred. Please try again in a few seconds.", er, i, i)
	});
	d.wi = m;
	d.Ic(Ge, "k=" + nh(a.id) + "&v=" + nh(b))
}

function Ft(a, b) {
	this.id = a;
	this.iz = b
}
Ft[G].ya = function () {
	return X("order-by-" + this.id)
};
var Gt = {
	date: "newest",
	magic: "auto"
}, Ht = {};

function It(a, b) {
	Ht[a] = new Ft(a, b)
}
It("magic", "m");
It("auto", "a");
It("newest", "n");
It("oldest", "o");

function Jt(a, b, c) {
	this.id = a;
	this.label = b;
	this.Ek = c
}

function Kt(a) {
	var b = a.id + "_density";
	a = Xn();
	Fh(a, function (c) {
		var d = c[Rd]("href"); - 1 != d[cc](b) ? ab(c, m) : -1 != d[cc]("_density") && ab(c, j)
	})
}

function Lt() {
	Mt(function (a) {
		Kt(a)
	})
}

function Mt(a) {
	Ct(of, function (b) {
		Nt[Ed](b) || (b = "large");
		a(Nt[b])
	})
}
var Nt = {};
Nt.large = new Jt("large", "Comfortable", 3);
Nt.medium = new Jt("medium", "Cozy", 2);
Nt.small = new Jt("small", "Compact", 1);

function Ot(a) {
	Ct(pf, function (b) {
		a("true" == b)
	})
}

function Pt(a) {
	Ct(sf, function (b) {
		a("true" == b)
	})
}

function Qt() {
	var a = j;
	Rt(function (b) {
		a = b
	});
	return a
}

function Rt(a) {
	Ct(vf, function (b) {
		a("true" == b)
	})
}
var St = m;

function Tt(a, b) {
	Et(wf, a[bd]());
	var c = zn("Your start page has been changed to &quot;%1&quot;", b);
	br(c, cr, i, i)
}

function Ut(a) {
	Ct(wf, function (b) {
		a(b)
	})
}

function Vt(a) {
	Ct(Df, function (b) {
		a("true" == b)
	})
}

function Wt(a) {
	Ct(zf, function (b) {
		a("true" == b)
	})
}

function Xt(a, b) {
	Et(yf, a ? "false" : "true", b)
}

function Yt(a, b) {
	Et(xf, a[bd](), b)
}

function Zt(a) {
	return Ct(Kf, function (b) {
		a(oa(b, 10) < ah())
	})
}

function $t(a) {
	return Ct(Lf, function (b) {
		a(oa(b, 10))
	})
}

function au(a, b) {
	Et(Lf, a[bd](), b)
}

function bu() {}
R(bu, lm);
Og(bu);
bu[G].k = function (a) {
	return a.v().k("div", this.w())
};
bu[G].I = function (a, b) {
	b.id && Rl(a, b.id);
	if ("HR" == b[je]) {
		var c = b;
		b = this.k(a);
		Fk(b, c);
		Hk(c)
	} else S(b, this.w());
	return b
};
bu[G].La = function () {};
bu[G].w = function () {
	return "goog-menuseparator"
};

function cu(a, b) {
	Dm[L](this, k, a || bu.fa(), b);
	Im(this, 1, m);
	Im(this, 2, m);
	Im(this, 4, m);
	Im(this, 32, m);
	this.H = 1
}
R(cu, Dm);
cu[G].Z = function () {
	cu.a.Z[L](this);
	jm(this.b(), "separator")
};
ym("goog-menuseparator", function () {
	return new cu
});

function du() {}
Og(du);
O = du[G];
O.Ib = function () {};

function eu(a, b, c) {
	b && Ma(b, c ? 0 : -1)
}
O.k = function (a) {
	return a.v().k("div", this.pe(a)[N](" "))
};
O.O = function (a) {
	return a
};
O.Tb = function (a) {
	return "DIV" == a[je]
};
O.I = function (a, b) {
	b.id && Rl(a, b.id);
	var c = this.w(),
		d = m,
		e = Uh(b);
	e && Fh(e, function (g) {
		g == c ? d = j : g && (g == c + "-disabled" ? a.Ca(m) : g == c + "-horizontal" ? fu(a, "horizontal") : g == c + "-vertical" && fu(a, "vertical"))
	}, this);
	d || S(b, c);
	gu(this, a, this.O(b));
	return b
};

function gu(a, b, c, d) {
	if (c) {
		d = d || c[uc];
		for (var e; d && d[oe] == c;) {
			e = d[Oc];
			if (1 == d[Ib]) {
				var g = a.vm(d);
				g && (g.e = d, b.aa() || g.Ca(m), b.Ea(g), g.I(d))
			} else(!d[Ae] || "" == lh(d[Ae])) && c[Hd](d);
			d = e
		}
	}
}
O.vm = function (a) {
	return Am(a)
};
O.Ae = function (a) {
	a = a.b();
	zl(a, j, Ri);
	U && (a.hideFocus = j);
	var b = this.Ib();
	b && jm(a, b)
};
O.Pa = function (a) {
	return a.b()
};
O.w = function () {
	return "goog-container"
};
O.pe = function (a) {
	var b = this.w(),
		c = [b, "horizontal" == a.Lf ? b + "-horizontal" : b + "-vertical"];
	a.aa() || c[w](b + "-disabled");
	return c
};

function hu(a, b, c) {
	Ol[L](this, c);
	this.C = b || du.fa();
	this.Lf = a || "vertical"
}
R(hu, Ol);
O = hu[G];
O.on = k;
O.ga = k;
O.C = k;
O.Lf = k;
O.ka = j;
O.eb = j;
O.sm = j;
O.Zb = -1;
O.Sa = k;
O.ad = m;
O.uv = m;
O.cz = j;
O.wd = k;
O.Pa = function () {
	return this.on || this.C.Pa(this)
};
O.Qj = function () {
	return this.ga || (this.ga = new sm(this.Pa()))
};
O.Bc = function () {
	return this.C
};
O.k = function () {
	this.e = this.C.k(this)
};
O.O = function () {
	return this.C.O(this.b())
};
O.Tb = function (a) {
	return this.C.Tb(a)
};
O.xb = function (a) {
	this.e = this.C.I(this, a);
	"none" == a[I][re] && (this.ka = m)
};
O.Z = function () {
	hu.a.Z[L](this);
	Tl(this, function (b) {
		b.P && iu(this, b)
	}, this);
	var a = this.b();
	this.C.Ae(this);
	this.D(this.ka, j);
	this[fd]().j(this, "enter", this.Fm).j(this, "highlight", this.Gm).j(this, "unhighlight", this.Lm).j(this, "open", this.mx).j(this, "close", this.Zw).j(a, "mousedown", this.Ec).j(ok(a), "mouseup", this.bx).j(a, ["mousedown", "mouseup", "mouseover", "mouseout", "contextmenu"], this.Yw);
	this.De() && ju(this, j)
};

function ju(a, b) {
	var c = a[fd](),
		d = a.Pa();
	b ? c.j(d, "focus", a.Wc).j(d, "blur", a.Cc).j(a.Qj(), "key", a.Jb) : c.pa(d, "focus", a.Wc).pa(d, "blur", a.Cc).pa(a.Qj(), "key", a.Jb)
}
O.Oa = function () {
	ku(this, -1);
	this.Sa && this.Sa.Ba(m);
	this.ad = m;
	hu.a.Oa[L](this)
};
O.i = function () {
	hu.a.i[L](this);
	this.ga && (this.ga.s(), this.ga = k);
	this.C = this.Sa = this.wd = this.on = k
};
O.Fm = function () {
	return j
};
O.Gm = function (a) {
	var b = Wl(this, a[K]);
	if (-1 < b && b != this.Zb) {
		var c = lu(this);
		c && c.Ob(m);
		this.Zb = b;
		c = lu(this);
		this.ad && c[Sc](j);
		this.cz && (this.Sa && c != this.Sa) && (c.Da & 64 ? c.Ba(j) : this.Sa.Ba(m))
	}
	km(this.b(), "activedescendant", a[K].b().id)
};
O.Lm = function (a) {
	a[K] == lu(this) && (this.Zb = -1);
	km(this.b(), "activedescendant", "")
};
O.mx = function (a) {
	if ((a = a[K]) && a != this.Sa && a[vb]() == this) this.Sa && this.Sa.Ba(m), this.Sa = a
};
O.Zw = function (a) {
	a[K] == this.Sa && (this.Sa = k)
};
O.Ec = function (a) {
	this.eb && (this.ad = j);
	var b = this.Pa();
	b && Pk(b) ? b[qc]() : a[Zb]()
};
O.bx = function () {
	this.ad = m
};
O.Yw = function (a) {
	var b;
	a: {
		b = a[K];
		if (this.wd)
			for (var c = this.b(); b && b !== c;) {
				var d = b.id;
				if (d in this.wd) {
					b = this.wd[d];
					break a
				}
				b = b[oe]
			}
		b = k
	}
	if (b) switch (a[E]) {
	case "mousedown":
		b.Ec(a);
		break;
	case "mouseup":
		b.Af(a);
		break;
	case "mouseover":
		b.ye(a);
		break;
	case "mouseout":
		b.Im(a);
		break;
	case "contextmenu":
		b.Uh(a)
	}
};
O.Wc = function () {};
O.Cc = function () {
	ku(this, -1);
	this.ad = m;
	this.Sa && this.Sa.Ba(m)
};
O.Jb = function (a) {
	return this.aa() && this.F() && (0 != Ul(this) || this.on) && this.ic(a) ? (a[Zb](), a[wd](), j) : m
};
O.ic = function (a) {
	var b = lu(this);
	if (b && "function" == typeof b.Jb && b.Jb(a) || this.Sa && this.Sa != b && "function" == typeof this.Sa.Jb && this.Sa.Jb(a)) return j;
	if (a[ie] || a[sd] || a[dc] || a[dd]) return m;
	switch (a[D]) {
	case 27:
		if (this.De()) this.Pa()[Ub]();
		else return m;
		break;
	case 36:
		mu(this);
		break;
	case 35:
		nu(this);
		break;
	case 38:
		if ("vertical" == this.Lf) ou(this);
		else return m;
		break;
	case 37:
		if ("horizontal" == this.Lf) this.Fe() ? pu(this) : ou(this);
		else return m;
		break;
	case 40:
		if ("vertical" == this.Lf) pu(this);
		else return m;
		break;
	case 39:
		if ("horizontal" == this.Lf) this.Fe() ? ou(this) : pu(this);
		else return m;
		break;
	default:
		return m
	}
	return j
};

function iu(a, b) {
	var c = b.b(),
		c = c.id || (c.id = b[Id]());
	a.wd || (a.wd = {});
	a.wd[c] = b
}
O.Ea = function (a, b) {
	hu.a.Ea[L](this, a, b)
};
O.ig = function (a, b, c) {
	a.Ri |= 2;
	a.Ri |= 64;
	(this.De() || !this.uv) && Im(a, 32, m);
	a.Ji(m);
	hu.a.ig[L](this, a, b, c);
	a.P && this.P && iu(this, a);
	b <= this.Zb && this.Zb++
};
O.removeChild = function (a, b) {
	if (a = Sg(a) ? this.Ya && a ? (a in this.Ya ? this.Ya[a] : i) || k : k : a) {
		var c = Wl(this, a); - 1 != c && (c == this.Zb ? a.Ob(m) : c < this.Zb && this.Zb--);
		(c = a.b()) && (c.id && this.wd) && ni(this.wd, c.id)
	}
	a = hu.a[Hd][L](this, a, b);
	a.Ji(j);
	return a
};

function fu(a, b) {
	a.b() && f(p("Component already rendered"));
	a.Lf = b
}
O.F = function () {
	return this.ka
};
O.D = function (a, b) {
	if (b || this.ka != a && this[A](a ? "show" : "hide")) {
		this.ka = a;
		var c = this.b();
		c && (xl(c, a), this.De() && eu(this.C, this.Pa(), this.eb && this.ka), b || this[A](this.ka ? "aftershow" : "afterhide"));
		return j
	}
	return m
};
O.aa = function () {
	return this.eb
};
O.Ca = function (a) {
	if (this.eb != a && this[A](a ? "enable" : "disable")) a ? (this.eb = j, Tl(this, function (b) {
		b.Uu ? delete b.Uu : b.Ca(j)
	})) : (Tl(this, function (b) {
		b.aa() ? b.Ca(m) : b.Uu = j
	}), this.ad = this.eb = m), this.De() && eu(this.C, this.Pa(), a && this.ka)
};
O.De = function () {
	return this.sm
};
O.gd = function (a) {
	a != this.sm && this.P && ju(this, a);
	this.sm = a;
	this.eb && this.ka && eu(this.C, this.Pa(), a)
};

function ku(a, b) {
	var c = Vl(a, b);
	c ? c.Ob(j) : -1 < a.Zb && lu(a).Ob(m)
}
O.Ob = function (a) {
	ku(this, Wl(this, a))
};

function lu(a) {
	return Vl(a, a.Zb)
}

function mu(a) {
	qu(a, function (b, c) {
		return (b + 1) % c
	}, Ul(a) - 1)
}

function nu(a) {
	qu(a, function (b, c) {
		b--;
		return 0 > b ? c - 1 : b
	}, 0)
}

function pu(a) {
	qu(a, function (b, c) {
		return (b + 1) % c
	}, a.Zb)
}

function ou(a) {
	qu(a, function (b, c) {
		b--;
		return 0 > b ? c - 1 : b
	}, a.Zb)
}

function qu(a, b, c) {
	c = 0 > c ? Wl(a, a.Sa) : c;
	var d = Ul(a);
	c = b[L](a, c, d);
	for (var e = 0; e <= d;) {
		var g = Vl(a, c);
		if (g && a.Vp(g)) return ku(a, c), j;
		e++;
		c = b[L](a, c, d)
	}
	return m
}
O.Vp = function (a) {
	return a.F() && a.aa() && !! (a.Da & 2)
};

function ru() {}
R(ru, lm);
Og(ru);
ru[G].w = function () {
	return "goog-menuheader"
};

function su(a, b, c) {
	Dm[L](this, a, c || ru.fa(), b);
	Im(this, 1, m);
	Im(this, 2, m);
	Im(this, 4, m);
	Im(this, 32, m);
	this.H = 1
}
R(su, Dm);
ym("goog-menuheader", function () {
	return new su(k)
});

function tu() {
	this.Ml = []
}
R(tu, lm);
Og(tu);

function uu(a, b) {
	var c = a.Ml[b];
	if (!c) {
		switch (b) {
		case 0:
			c = a.w() + "-highlight";
			break;
		case 1:
			c = a.w() + "-checkbox";
			break;
		case 2:
			c = a.w() + "-content"
		}
		a.Ml[b] = c
	}
	return c
}
O = tu[G];
O.Ib = function () {
	return "menuitem"
};
O.k = function (a) {
	var b = a.v().k("div", this.pe(a)[N](" "), vu(this, a.yc(), a.v()));
	wu(this, a, b, !! (a.Da & 8) || !! (a.Da & 16));
	return b
};
O.O = function (a) {
	return a && a[uc]
};
O.I = function (a, b) {
	var c = Jk(b),
		d = uu(this, 2);
	c && Zh(c, d) || b[v](vu(this, b[Hc], a.v()));
	Zh(b, "goog-option") && (a.Vf(j), this.Vf(a, b, j));
	return tu.a.I[L](this, a, b)
};
O.La = function (a, b) {
	var c = this.O(a),
		d = xu(this, a) ? c[uc] : k;
	tu.a.La[L](this, a, b);
	d && !xu(this, a) && c[$b](d, c[uc] || k)
};

function vu(a, b, c) {
	a = uu(a, 2);
	return c.k("div", a, b)
}
O.Ki = function (a, b, c) {
	b && (jm(b, c ? "menuitemradio" : this.Ib()), wu(this, a, b, c))
};
O.Vf = function (a, b, c) {
	b && (jm(b, c ? "menuitemcheckbox" : this.Ib()), wu(this, a, b, c))
};

function xu(a, b) {
	var c = a.O(b);
	if (c) {
		var c = c[uc],
			d = uu(a, 1);
		return !!c && Zh(c, d)
	}
	return m
}

function wu(a, b, c, d) {
	if (d != xu(a, c))
		if ($h(c, "goog-option", d), c = a.O(c), d) a = uu(a, 1), c[$b](b.v().k("div", a), c[uc] || k);
		else c[Hd](c[uc])
}
O.Oh = function (a) {
	switch (a) {
	case 2:
		return uu(this, 0);
	case 16:
	case 8:
		return "goog-option-selected";
	default:
		return tu.a.Oh[L](this, a)
	}
};
O.Dm = function (a) {
	var b = uu(this, 0);
	switch (a) {
	case "goog-option-selected":
		return 16;
	case b:
		return 2;
	default:
		return tu.a.Dm[L](this, a)
	}
};
O.w = function () {
	return "goog-menuitem"
};

function yu(a, b, c, d) {
	Dm[L](this, a, d || tu.fa(), c);
	this.Ta(b)
}
R(yu, Dm);
O = yu[G];
O.S = function () {
	var a = this.oi;
	return a != k ? a : this.tf()
};
O.Ta = function (a) {
	this.oi = a
};
O.Ki = function (a) {
	Im(this, 8, a);
	this.H & 16 && !a && Hm(this, m);
	var b = this.b();
	b && this.Bc().Ki(this, b, a)
};
O.Vf = function (a) {
	Im(this, 16, a);
	var b = this.b();
	b && this.Bc().Vf(this, b, a)
};
O.tf = function () {
	var a = this.yc();
	return Qg(a) ? (a = Hh(a, function (b) {
		var c = Uh(b);
		return Kh(c, "goog-menuitem-accel") || Kh(c, "goog-menuitem-mnemonic-separator") ? "" : Tk(b)
	})[N](""), kh(a)) : yu.a.tf[L](this)
};
O.Af = function (a) {
	var b = this[vb]();
	if (b) {
		var c = b.mt;
		b.mt = k;
		if (b = c && Tg(a[Uc])) b = new ek(a[Uc], a[Vc]), b = c == b ? j : !c || !b ? m : c.x == b.x && c.y == b.y;
		if (b) return
	}
	yu.a.Af[L](this, a)
};
O.ic = function (a) {
	return a[D] == this.Rj() && this.Pd(a) ? j : yu.a.ic[L](this, a)
};
O.Rj = function () {
	return this.lC
};
ym("goog-menuitem", function () {
	return new yu(k)
});

function zu() {}
R(zu, du);
Og(zu);
O = zu[G];
O.Ib = function () {
	return "menu"
};
O.Tb = function (a) {
	return "UL" == a[je] || zu.a.Tb[L](this, a)
};
O.vm = function (a) {
	return "HR" == a[je] ? new cu : zu.a.vm[L](this, a)
};
O.Qc = function (a, b) {
	return Kk(a.b(), b)
};
O.w = function () {
	return "goog-menu"
};
O.Ae = function (a) {
	zu.a.Ae[L](this, a);
	km(a.b(), "haspopup", "true")
};

function Au(a) {
	cu[L](this, bu.fa(), a)
}
R(Au, cu);
ym("goog-menuseparator", function () {
	return new cu
});

function Bu(a, b) {
	hu[L](this, "vertical", b || zu.fa(), a);
	this.gd(m)
}
R(Bu, hu);
O = Bu[G];
O.uh = j;
O.vv = m;
O.w = function () {
	return this.Bc().w()
};
O.Qc = function (a) {
	if (this.Bc().Qc(this, a)) return j;
	for (var b = 0, c = Ul(this); b < c; b++) {
		var d = Vl(this, b);
		if ("function" == typeof d.Qc && d.Qc(a)) return j
	}
	return m
};
O.M = function (a) {
	this.Ea(a, j)
};
O.rd = function (a, b) {
	this.ig(a, b, j)
};
O.Oe = function (a) {
	(a = this[Hd](a, j)) && a.s()
};
O.Pe = function (a) {
	(a = Xl(this, a, j)) && a.s()
};
O.vf = function (a) {
	return Vl(this, a)
};
O.wf = function () {
	return Ul(this)
};
O.Qh = function () {
	var a = [];
	Tl(this, function (b) {
		a[w](b)
	});
	return a
};
O.Yt = function (a, b) {
	var c = this.F();
	c || xl(this.b(), j);
	ql(this.b(), a, b);
	c || xl(this.b(), m)
};
O.D = function (a, b, c) {
	(b = Bu.a.D[L](this, a, b)) && (a && this.P && this.uh) && this.Pa()[qc]();
	this.mt = a && c && Tg(c[Uc]) ? new ek(c[Uc], c[Vc]) : k;
	return b
};
O.Fm = function (a) {
	this.uh && this.Pa()[qc]();
	return Bu.a.Fm[L](this, a)
};
O.Vp = function (a) {
	return (this.vv || a.aa()) && a.F() && !! (a.Da & 2)
};
O.xb = function (a) {
	var b = this.Bc(),
		c;
	c = this.v();
	c = sk(c.V, "div", b.w() + "-content", a);
	for (var d = c[F], e = 0; e < d; e++) gu(b, this, c[e]);
	Bu.a.xb[L](this, a)
};
O.ic = function (a) {
	var b = Bu.a.ic[L](this, a);
	b || Tl(this, function (c) {
		!b && (c.Rj && c.Rj() == a[D]) && (this.aa() && this.Ob(c), b = c.Jb(a))
	}, this);
	return b
};
var Cu = {
	tl: 0,
	JB: 2,
	ql: 1,
	AB: 3,
	KB: 4,
	IB: 6,
	BB: 5,
	zB: 7
};

function Du(a, b, c, d, e, g, h, l, r) {
	var t = Eu(c),
		y = vl(a),
		H = jl(a);
	H && y.Vm(new Zk(H[B], H.top, H[Ce] - H[B], H[Zd] - H.top));
	var H = mk(a),
		Ha = mk(c);
	if (H.V != Ha.V) {
		var H = H.V[J],
			Ha = Wk(Ha),
			ga = new ek(0, 0),
			hb = xk(ok(H)),
			lj = H;
		do {
			var Mh = hb == Ha ? kl(lj) : ol(lj);
			ga.x += Mh.x;
			ga.y += Mh.y
		} while (hb && hb != Ha && (lj = hb.frameElement) && (hb = hb.parent));
		H = fk(ga, kl(H));
		Ca(y, y[B] + H.x);
		y.top += H.y
	}
	a = (b & 4 && ll(a) ? b ^ 2 : b) & -5;
	y = new ek(a & 2 ? y[B] + y[x] : y[B], a & 1 ? y.top + y[M] : y.top);
	y = fk(y, t);
	e && (y.x += (a & 2 ? -1 : 1) * e.x, y.y += (a & 1 ? -1 : 1) * e.y);
	var se;
	if (h)
		if (r) se = r;
		else if (se = jl(c)) se.top -= t.y, qb(se, se[Ce] - t.x), ib(se, se[Zd] - t.y), Ca(se, se[B] - t.x);
	return Fu(y, c, d, g, se, h, l)
}

function Eu(a) {
	var b;
	if (a = a[ud]) {
		var c = "HTML" == a[je] || "BODY" == a[je];
		if (!c || "static" != dl(a)) b = kl(a), c || (c = (c = ll(a)) && Ri ? -a[Wd] : c && (!U || !ej("8")) ? a[Od] - a[nd] - a[Wd] : a[Wd], b = fk(b, new ek(c, a[Zc])))
	}
	return b || new ek
}

function Fu(a, b, c, d, e, g, h) {
	a = a.Na();
	var l = 0,
		r = (c & 4 && ll(b) ? c ^ 2 : c) & -5;
	c = tl(b);
	h = h ? h.Na() : c.Na();
	if (d || 0 != r) r & 2 ? a.x -= h[x] + (d ? d[Ce] : 0) : d && (a.x += d[B]), r & 1 ? a.y -= h[M] + (d ? d[Zd] : 0) : d && (a.y += d.top);
	if (g) {
		if (e) {
			l = a;
			d = 0;
			if (65 == (g & 65) && (l.x < e[B] || l.x >= e[Ce])) g &= -2;
			if (132 == (g & 132) && (l.y < e.top || l.y >= e[Zd])) g &= -5;
			l.x < e[B] && g & 1 && (l.x = e[B], d |= 1);
			l.x < e[B] && (l.x + h[x] > e[Ce] && g & 16) && (xa(h, s.max(h[x] - (l.x + h[x] - e[Ce]), 0)), d |= 4);
			l.x + h[x] > e[Ce] && g & 1 && (l.x = s.max(e[Ce] - h[x], e[B]), d |= 1);
			g & 2 && (d |= (l.x < e[B] ? 16 : 0) | (l.x + h[x] > e[Ce] ?
				32 : 0));
			l.y < e.top && g & 4 && (l.y = e.top, d |= 2);
			l.y >= e.top && (l.y + h[M] > e[Zd] && g & 32) && (pb(h, s.max(h[M] - (l.y + h[M] - e[Zd]), 0)), d |= 8);
			l.y + h[M] > e[Zd] && g & 4 && (l.y = s.max(e[Zd] - h[M], e.top), d |= 2);
			g & 8 && (d |= (l.y < e.top ? 64 : 0) | (l.y + h[M] > e[Zd] ? 128 : 0));
			l = d
		} else l = 256; if (l & 496) return l
	}
	el(b, a);
	hk(c, h) || (mk(ok(b)), U && !ej("8") ? (a = b[I], e = Cl(b, "padding"), b = nl(b), a.pixelWidth = h[x] - b[B] - e[B] - e[Ce] - b[Ce], a.pixelHeight = h[M] - b.top - e.top - e[Zd] - b[Zd]) : (b = b[I], Ri ? b.MozBoxSizing = "border-box" : Si ? b.WebkitBoxSizing = "border-box" : b.boxSizing =
		"border-box", xa(b, s.max(h[x], 0) + "px"), pb(b, s.max(h[M], 0) + "px")));
	return l
}

function Gu() {}
Gu[G].Ja = function () {};

function Hu(a, b, c) {
	lb(this, a);
	this.cf = b;
	this.ez = c
}
R(Hu, Gu);
Hu[G].Ja = function (a, b, c) {
	Du(this[ke], this.cf, a, b, i, c, this.ez)
};

function Iu(a, b, c, d) {
	Hu[L](this, a, b);
	this.hi = c ? 5 : 0;
	this.Xn = d || i
}
R(Iu, Hu);
Iu[G].Cm = function () {
	return this.hi
};
Iu[G].Wk = function (a) {
	this.hi = a
};
Iu[G].Ja = function (a, b, c, d) {
	var e = Du(this[ke], this.cf, a, b, k, c, 10, d, this.Xn);
	if (e & 496) {
		var g = Ju(this, e, this.cf);
		b = Ju(this, e, b);
		e = Du(this[ke], g, a, b, k, c, 10, d, this.Xn);
		e & 496 && (g = Ju(this, e, g), b = Ju(this, e, b), Du(this[ke], g, a, b, k, c, this.Cm(), d, this.Xn))
	}
};

function Ju(a, b, c) {
	b & 48 && (c ^= 2);
	b & 192 && (c ^= 1);
	return c
}

function Ku(a, b, c, d) {
	Iu[L](this, a, b, c || d);
	if (c || d) this.Wk(65 | (d ? 32 : 132))
}
R(Ku, Iu);

function Lu() {}
R(Lu, rm);
Og(Lu);
O = Lu[G];
O.k = function (a) {
	var b = {
		"class": "goog-inline-block " + this.pe(a)[N](" "),
		title: a.we() || ""
	}, b = a.v().k("div", b, this.tj(a.yc(), a.v()));
	nm(this, a, b);
	return b
};
O.Ib = function () {
	return "button"
};
O.O = function (a) {
	return a && a[uc][uc]
};
O.tj = function (a, b) {
	return b.k("div", "goog-inline-block " + (this.w() + "-outer-box"), b.k("div", "goog-inline-block " + (this.w() + "-inner-box"), a))
};
O.Tb = function (a) {
	return "DIV" == a[je]
};
O.I = function (a, b) {
	Mu(b, j);
	Mu(b, m);
	var c;
	a: {
		c = a.v().Wq(b);
		var d = this.w() + "-outer-box";
		if (c && Zh(c, d) && (c = a.v().Wq(c), d = this.w() + "-inner-box", c && Zh(c, d))) {
			c = j;
			break a
		}
		c = m
	}
	c || b[v](this.tj(b[Hc], a.v()));
	S(b, "goog-inline-block", this.w());
	return Lu.a.I[L](this, a, b)
};
O.w = function () {
	return "goog-custom-button"
};

function Mu(a, b) {
	if (a)
		for (var c = b ? a[uc] : a[Ld], d; c && c[oe] == a;) {
			d = b ? c[Oc] : c.previousSibling;
			if (3 == c[Ib]) {
				var e = c[Ae];
				if ("" == lh(e)) a[Hd](c);
				else {
					c.nodeValue = b ? e[z](/^[\s\xa0]+/, "") : e[z](/[\s\xa0]+$/, "");
					break
				}
			} else break;
			c = d
		}
}

function Nu() {}
R(Nu, Lu);
Og(Nu);
Ri && (Nu[G].La = function (a, b) {
	var c = Nu.a.O[L](this, a && a[uc]);
	c && Ik(this[Jb](b, mk(a)), c)
});
O = Nu[G];
O.O = function (a) {
	a = Nu.a.O[L](this, a && a[uc]);
	Ri && (a && a.__goog_wrapper_div) && (a = a[uc]);
	return a
};
O.I = function (a, b) {
	var c = rk("*", "goog-menu", b)[0];
	if (c) {
		xl(c, m);
		ok(c)[J][v](c);
		var d = new Bu;
		d.I(c);
		a.hd(d)
	}
	return Nu.a.I[L](this, a, b)
};
O.tj = function (a, b) {
	return Nu.a.tj[L](this, [this[Jb](a, b), this.uj(b)], b)
};
O.createCaption = function (a, b) {
	return b.k("div", "goog-inline-block " + (this.w() + "-caption"), a)
};
O.uj = function (a) {
	return a.k("div", "goog-inline-block " + (this.w() + "-dropdown"), "\u00a0")
};
O.w = function () {
	return "goog-menu-button"
};

function Ou(a, b, c, d) {
	Mm[L](this, a, c || Nu.fa(), d);
	Im(this, 64, j);
	this.Sg = new Ku(k, 5);
	b && this.hd(b);
	this.py = k;
	this.R = new Gl(500);
	if ((Ds || Es) && !ej("533.17.9")) this.gk = j
}
R(Ou, Mm);
O = Ou[G];
O.gk = m;
O.Ht = m;
O.Z = function () {
	Ou.a.Z[L](this);
	this.z && Pu(this, this.z, j);
	km(this.b(), "haspopup", "true")
};
O.Oa = function () {
	Ou.a.Oa[L](this);
	if (this.z) {
		this.Ba(m);
		this.z.Oa();
		Pu(this, this.z, m);
		var a = this.z.b();
		a && Hk(a)
	}
};
O.i = function () {
	Ou.a.i[L](this);
	this.z && (this.z.s(), delete this.z);
	delete this.tt;
	this.R.s()
};
O.Ec = function (a) {
	Ou.a.Ec[L](this, a);
	this.Be() && (this.Ba(!this.Bb(), a), this.z && (this.z.ad = this.Bb()))
};
O.Af = function (a) {
	Ou.a.Af[L](this, a);
	this.z && !this.Be() && (this.z.ad = m)
};
O.Pd = function () {
	this[Sc](m);
	return j
};
O.ax = function (a) {
	this.z && (this.z.F() && !this.Qc(a[K])) && this.Ba(m)
};
O.Qc = function (a) {
	return a && Kk(this.b(), a) || this.z && this.z.Qc(a) || m
};
O.ic = function (a) {
	if (32 == a[D]) {
		if (a[Zb](), "keyup" != a[E]) return j
	} else if ("key" != a[E]) return m;
	if (this.z && this.z.F()) {
		var b = this.z.Jb(a);
		return 27 == a[D] ? (this.Ba(m), j) : b
	}
	return 40 == a[D] || 38 == a[D] || 32 == a[D] || 13 == a[D] ? (this.Ba(j), j) : m
};
O.Hm = function () {
	this.Ba(m)
};
O.jx = function () {
	this.Be() || this.Ba(m)
};
O.Cc = function (a) {
	this.gk || this.Ba(m);
	Ou.a.Cc[L](this, a)
};
O.L = function () {
	this.z || this.hd(new Bu(this.v()));
	return this.z || k
};
O.hd = function (a) {
	var b = this.z;
	if (a != b && (b && (this.Ba(m), this.P && Pu(this, b, m), delete this.z), a)) {
		this.z = a;
		a.Te(this);
		a.D(m);
		var c = this.gk;
		(a.uh = c) && a.gd(j);
		this.P && Pu(this, a, j)
	}
	return b
};

function Qu(a, b) {
	a.tt = b;
	a.zk()
}
O.M = function (a) {
	this.L().Ea(a, j)
};
O.rd = function (a, b) {
	this.L().ig(a, b, j)
};
O.Oe = function (a) {
	(a = this.L()[Hd](a, j)) && a.s()
};
O.Pe = function (a) {
	(a = Xl(this.L(), a, j)) && a.s()
};
O.vf = function (a) {
	return this.z ? Vl(this.z, a) : k
};
O.wf = function () {
	return this.z ? Ul(this.z) : 0
};
O.D = function (a, b) {
	var c = Ou.a.D[L](this, a, b);
	c && !this.F() && this.Ba(m);
	return c
};
O.Ca = function (a) {
	Ou.a.Ca[L](this, a);
	this.aa() || this.Ba(m)
};

function Ru(a) {
	a = a.Sg.cf;
	return 5 == a || 4 == a
}

function Su(a, b) {
	a.Sg.cf = b ? 5 : 7
}

function Tu(a) {
	return a.Sg.Cm && !! (a.Sg.Cm() & 32)
}
O.gu = function () {
	this.Ba(j)
};
O.Ba = function (a, b) {
	Ou.a.Ba[L](this, a);
	if (this.z && !! (this.H & 64) == a) {
		if (a) this.z.P || (this.Ht ? this.z.oa(this.b()[oe]) : this.z.oa()), this.dg = jl(this.b()), this.bf = vl(this.b()), this.zk(), ku(this.z, -1);
		else if (this[Sc](m), this.z.ad = m, this.b() && km(this.b(), "activedescendant", ""), this.yk != k) {
			this.yk = i;
			var c = this.z.b();
			c && rl(c, "", "")
		}
		this.z.D(a, m, b);
		if (!this.he) {
			var c = this[fd](),
				d = a ? c.j : c.pa;
			d[L](c, Vk(this.v()), "mousedown", this.ax, j);
			this.gk && d[L](c, this.z, "blur", this.jx);
			d[L](c, this.R, "tick", this.Xg);
			a ? this.R[Qd]() :
				this.R[ad]()
		}
	}
};
O.zk = function () {
	if (this.z.P) {
		var a = this.Sg;
		lb(this.Sg, this.tt || this.b());
		var b = this.z.b();
		this.z.F() || (Ra(b[I], "hidden"), xl(b, j));
		!this.yk && Tu(this) && (this.yk = tl(b));
		a.Ja(b, a.cf ^ 1, this.py, this.yk);
		this.z.F() || (xl(b, m), Ra(b[I], "visible"))
	}
};
O.Xg = function () {
	var a = vl(this.b()),
		b = jl(this.b());
	if (!(this.bf == a || (!this.bf || !a ? 0 : this.bf[B] == a[B] && this.bf[x] == a[x] && this.bf.top == a.top && this.bf[M] == a[M])) || !(this.dg == b || (!this.dg || !b ? 0 : this.dg.top == b.top && this.dg[Ce] == b[Ce] && this.dg[Zd] == b[Zd] && this.dg[B] == b[B]))) this.bf = a, this.dg = b, this.zk()
};

function Pu(a, b, c) {
	var d = a[fd]();
	c = c ? d.j : d.pa;
	c[L](d, b, "action", a.Hm);
	c[L](d, b, "highlight", a.Gm);
	c[L](d, b, "unhighlight", a.Lm)
}
O.Gm = function (a) {
	km(this.b(), "activedescendant", a[K].b().id)
};
O.Lm = function () {
	lu(this.z) || km(this.b(), "activedescendant", "")
};
ym("goog-menu-button", function () {
	return new Ou(k)
});

function Uu(a, b, c, d, e) {
	function g(l) {
		l && (Ma(l, 0), jm(l, h.Ib()), S(l, "goog-zippy-header"), Vu(h, l), l && h.gs.j(l, "keydown", h.Ny))
	}
	this.Y = e || mk();
	this.jf = this.Y.b(a) || k;
	this.Ej = this.Y.b(d || k);
	this.tg = (this.Bn = Ug(b) ? b : k) || !b ? k : this.Y.b(b);
	this.vg = c == j;
	this.gs = new Jl(this);
	this.Kn = new Jl(this);
	var h = this;
	g(this.jf);
	g(this.Ej);
	this.Td(this.vg)
}
R(Uu, Fl);
O = Uu[G];
O.Bg = j;
O.gx = j;
O.i = function () {
	Uu.a.i[L](this);
	wj(this.gs);
	wj(this.Kn)
};
O.Ib = function () {
	return "tab"
};
O.O = function () {
	return this.tg
};
ya(O, function () {
	this.Td(j)
});
O.collapse = function () {
	this.Td(m)
};
Ta(O, function () {
	this.Td(!this.vg)
});
O.Td = function (a) {
	this.tg ? xl(this.tg, a) : a && this.Bn && (this.tg = this.Bn());
	this.tg && S(this.tg, "goog-zippy-content");
	this.Ej ? (xl(this.jf, !a), xl(this.Ej, a)) : Wu(this, a);
	this.vg = a;
	this[A](new Xu("toggle", this, this.vg))
};
O.Ce = function () {
	return this.vg
};

function Wu(a, b) {
	a.jf && ($h(a.jf, "goog-zippy-expanded", b), $h(a.jf, "goog-zippy-collapsed", !b), km(a.jf, "expanded", b))
}
O.Sr = function () {
	return this.gx
};
O.Ji = function (a) {
	this.Bg != a && ((this.Bg = a) ? (Vu(this, this.jf), Vu(this, this.Ej)) : this.Kn.Qd())
};

function Vu(a, b) {
	b && a.Kn.j(b, "click", a.My)
}
O.Ny = function (a) {
	if (13 == a[D] || 32 == a[D]) this[$c](), this[A](new xj("action", this)), a[Zb](), a[wd]()
};
O.My = function () {
	this[$c]();
	this[A](new xj("action", this))
};

function Xu(a, b, c) {
	xj[L](this, a, b);
	this.XB = c
}
R(Xu, xj);

function Yu(a, b, c) {
	this.id = a;
	this.Uv = b;
	this.Zv = c
}
var Zu = new Yu("ism", function (a) {
	return "true" == a
}, function () {
	return m
}),
	$u = new Yu("suc", function (a) {
		return "true" == a
	}, function () {
		return j
	}),
	av = new Yu("sas", function (a) {
		return "true" == a
	}, function () {
		return "true" == cs(qf)
	}),
	bv = new Yu("ssa", function (a) {
		return "true" == a
	}, function () {
		return "true" == cs(Ef)
	});

function cv() {
	try {
		this.Ne = gq(cs(Gf))
	} catch (a) {
		this.Ne = {}
	}
}
cv[G].ma = function (a, b) {
	return dv(this, a, b) ? b.Uv(this.Ne[a][b.id]) : b.Zv()
};

function dv(a, b, c) {
	return b in a.Ne && c.id in a.Ne[b]
}
cv[G].set = function (a, b, c) {
	dv(this, a, b) && this.ma(a, b) == c || (a in this.Ne || (this.Ne[a] = {}), this.Ne[a][b.id] = c[bd](), a = Et, b = Gf, c = [], jq(new iq(i), this.Ne, c), a(b, c[N]("")))
};
var ev, fv;

function gv() {
	this.Pg = ls() ? new hv : k;
	this.gj = new iv;
	this.Ax = new jv;
	this.Tz = new kv;
	this.sA = new lv;
	this.yz = new mv;
	this.Pt = [this.Ax, this.Tz, this.yz, this.sA];
	this.Rt = Nh(this.Pt, [this.gj]);
	this.Pg && this.Rt[w](this.Pg)
}
O = gv[G];
O.oa = function (a) {
	for (var b = {
		Pg: this.Pg,
		gj: this.gj,
		Mz: this.Pt
	}, c = (b.Pg ? b.Pg.Vi(k) : "") + b.gj.Vi(k) + "<div id='scrollable-sections-holder'><div id='scrollable-sections' class='mouseout'>", b = b.Mz, d = b[F], e = 0; e < d; e++) {
		var g = b[e];
		g.tk ? g = g.Vi({
			Db: g
		}) : (g = {
			Db: g,
			Wv: "lhn-section"
		}, g = "<div " + (g.Db.id ? 'id="lhn-' + W(g.Db.id) + '"' : "") + ' class="section ' + W(g.Wv) + " " + (g.Db.kc ? "section-minimized" : "") + " " + (!g.Db.en ? "lhn-section-no-unread-counts" : "") + '">' + (g.Db.id && g.Db.hw ? '<div id="lhn-' + W(g.Db.id) + '-indicator" class="section-button lhn-indicator" title="' +
			W(g.Db.aC) + '"></div>' : "") + "<div " + (g.Db.id ? 'id="lhn-' + W(g.Db.id) + '-minimize"' : "") + ' class="section-button section-minimize"></div><div ' + (g.Db.id ? 'id="lhn-' + W(g.Db.id) + '-menubutton"' : "") + ' class="section-button section-menubutton goog-menu-button"></div>' + (g.Db.Vi ? g.Db.Vi(g) : "") + "</div>");
		c += g
	}
	u(a, c + "</div><div id='scrollable-sections-top-shadow'></div><div id='scrollable-sections-bottom-shadow'></div></div>")
};
O.ua = function () {
	for (var a = 0, b; b = this.Rt[a]; a++) b.ua(), b.zp();
	Pt(P(this.Eo, this));
	V(X("chrome-lhn-menu"), "click", this.Du, m, this);
	V(X("scrollable-sections"), "scroll", this.Yy, m, this)
};
O.kc = function () {
	return Zh(q[J], "lhn-hidden")
};
O.Eo = function (a) {
	$h(q[J], "lhn-hidden", a);
	$h(X("chrome-lhn-menu"), "hidden", !a);
	a ? mr("lhn-minimized") : (this.Oc(), nv(this) && this.Fo(m))
};
O.OA = function () {
	Zh(q[J], "fullscreen") || this.Eo(!this.kc())
};

function nv() {
	return Zh(q[J], "lhn-menu")
}
O.Fo = function (a) {
	$h(q[J], "lhn-menu", a);
	ov(X("chrome-lhn-menu"), a);
	if (a && (this.Oc(), mr("lhn-minimized-menu"), !this.sv)) {
		var b = this;
		a = P(this.Fo, this, m);
		Pq(function () {
			return nv(b) ? [X("nav"), X("chrome-lhn-menu"), X("quick-add-bubble-holder")] : k
		}, a);
		$.$p[w](a);
		this.sv = j
	}
};
O.Du = function () {
	this.kc() && this.Fo(!nv(this))
};
O.Oc = function (a) {
	var b = a || wk(n)[M];
	nv(this) && (b -= 10);
	a = X("scrollable-sections");
	if (a[xe]) {
		var c = kl(a).y,
			b = b - c - 13;
		pb(a[I], s.max(b, 20) + "px")
	}
};
O.Yy = function () {
	var a = X("scrollable-sections"),
		b = a[sc] - (a[Zc] + a[Vd]);
	$a(X("scrollable-sections-top-shadow")[I], a[Zc] / 30);
	$a(X("scrollable-sections-bottom-shadow")[I], b / 30)
};

function pv(a, b) {
	this.id = a;
	this.Vi = b;
	this.kc = this.tb(Zu);
	this.en = this.tb($u);
	this.hw = m
}
O = pv[G];
O.tb = function (a) {
	return fv.ma(this.id, a)
};
O.Kc = function (a, b) {
	fv.set(this.id, a, b)
};
O.ua = function () {
	if (!this.tk) {
		this.uk = X("lhn-" + this.id);
		V(X("lhn-" + this.id + "-minimize"), "click", this.Cu, m, this);
		this.$c = Cm(X("lhn-" + this.id + "-menubutton"));
		var a = new zu;
		a.w = function () {
			return "goog-menu lhn-menu"
		};
		a = new Bu(i, a);
		this.$c.hd(a);
		Su(this.$c, m);
		this.wy || qv(this, "Show unread counts", "Hide unread counts", this.tb($u), this.bp)
	}
};
O.bp = function (a) {
	this.en = a;
	this.Kc($u, a);
	$h(this.uk, "lhn-section-no-unread-counts", !a)
};
O.zp = function () {};

function qv(a, b, c, d, e) {
	var g = new yu(b);
	g.Vf(j);
	g.wa(16, d);
	a.$c.M(g);
	var h = new yu(c);
	h.Vf(j);
	h.wa(16, !d);
	a.$c.M(h);
	e = P(e, a);
	V(a.$c, "action", function (l) {
		l[K] == g ? (g.wa(16, j), h.wa(16, m), e(j)) : l[K] == h && (g.wa(16, m), h.wa(16, j), e(m))
	})
}

function rv(a, b, c, d) {
	var e = new yu(b);
	d ? a.$c.rd(e, 0) : a.$c.M(e);
	c = P(c, a);
	V(a.$c, "action", function (g) {
		g[K] == e && c()
	})
}

function sv(a, b) {
	var c = new Au;
	b ? a.$c.rd(c, 0) : a.$c.M(c)
}
O.Cu = function () {
	this.kc = !this.kc;
	$h(this.uk, "section-minimized", this.kc);
	ev.Oc();
	this.Kc(Zu, this.kc)
};
ya(O, function () {
	this.kc && this.Cu()
});

function kv() {
	pv[L](this, "selectors", tv);
	!dv(fv, this.id, Zu) && (604800 > Ln() / 1E3 - ra && 0 == op.Eb[F]) && (this.kc = j);
	var a = this;
	Ls(function (b, c) {
		if (!dv(fv, a.id, Zu) && 604800 > Ln() / 1E3 - ra && 0 == op.Eb[F]) {
			var d = Yo(Z);
			Ih(c, function (e) {
				return e.W(d)
			}) && a.expand()
		}
	})
}
R(kv, pv);
kv[G].ua = function () {
	kv.a.ua[L](this);
	var a = Uo();
	uv = new vv("reading-list-selector", a, j);
	wv = new vv("star-selector", Ao(Yo(Z)), j);
	xr.xe(a, P(this.ip, this));
	var b = this;
	xv(xr, function (c, d, e) {
		c.W(a) && b.ip(d, e)
	});
	yv = new zv;
	Av = new Bv;
	Cv = new Dv
};
kv[G].ip = function (a, b) {
	var c = Uo();
	Ev(X("reading-list-unread-count"), c, a, b);
	$h(X("reading-list-selector"), "unread", a);
	this.en && 0 < a ? (c = Fv(a, b), Zr(c)) : Zr("")
};
kv[G].bp = function (a) {
	kv.a.bp[L](this, a);
	xr.xe(Uo(), P(this.ip, this))
};

function iv() {
	this.tk = j;
	pv[L](this, "add", Gv)
}
R(iv, pv);
iv[G].ua = function () {
	iv.a.ua[L](this);
	(new gn(k, i, jn.rl)).I(X("lhn-add-subscription"));
	V(X("lhn-add-subscription"), "click", function (a) {
		Hv || (Hv = new Iv);
		Hv[$c]();
		a[wd]()
	})
};

function jv() {
	this.tk = j;
	pv[L](this, "home", Jv)
}
R(jv, pv);

function hv() {
	this.tk = j;
	pv[L](this, "logo", Kv)
}
R(hv, pv);

function lv() {
	pv[L](this, "subscriptions", Lv)
}
R(lv, pv);
O = lv[G];
O.ua = function () {
	lv.a.ua[L](this);
	Mv = new Nv;
	var a = !this.tb(bv);
	Mv.bg = a;
	Ov(Mv, this.tb(av));
	V(X("sub-tree-header"), "click", this.Et, m, this);
	Mv[Mb]()
};
O.zp = function () {
	sv(this, j);
	rv(this, "Refresh", this.Et, j);
	sv(this);
	qv(this, "Sort alphabetically", "Sort by drag and drop", this.tb(bv), this.KA);
	sv(this);
	qv(this, "Show all", "Show updated", this.tb(av), this.PA);
	sv(this);
	qv(this, "Use favicons", "Use default icons", "true" == cs(xf), this.QA);
	sv(this);
	rv(this, "Add a subscription...", function () {
		n[qd](Pv, 1)
	});
	rv(this, "Manage subscriptions", function () {
		Ar(qr, "edit-subscriptions");
		mr("tree-view-settings")
	})
};
O.KA = function (a) {
	this.Kc(bv, a);
	Mv.bg = !a;
	Mv[re]()
};
O.PA = function (a) {
	this.Kc(av, a);
	Ov(Mv, a)
};
O.QA = function (a) {
	Yt(a, function () {
		a && op[Ic]();
		Mv[Mb]()
	})
};
O.Et = function () {
	S(this.uk, "sub-tree-refreshing");
	Mv[Ic]();
	xr.Qa(Q(T, this.uk, "sub-tree-refreshing"))
};

function mv() {
	this.wy = j;
	pv[L](this, "recommendations", Qv)
}
R(mv, pv);
mv[G].ua = function () {
	mv.a.ua[L](this);
	Rv = new Sv;
	Tv(Cv, X("recommendations-tree-view-all"), 2);
	Rv[Mb]()
};

function Uv(a, b, c) {
	b || (b = {});
	var d = c || n;
	c = "undefined" != typeof a[ae] ? a[ae] : qa(a);
	a = b[K] || a[K];
	var e = [],
		g;
	for (g in b) switch (g) {
	case "width":
	case "height":
	case "top":
	case "left":
		e[w](g + "=" + b[g]);
		break;
	case "target":
	case "noreferrer":
		break;
	default:
		e[w](g + "=" + (b[g] ? 1 : 0))
	}
	g = e[N](",");
	if (b.noreferrer) {
		if (b = d[xb]("", a, g)) U && -1 != c[cc](";") && (c = "'" + c[z](/'/g, "%27") + "'"), b.opener = k, Si ? jb(b[yd], c) : (c = ph(c), b[rd][hc]('<META HTTP-EQUIV="refresh" content="0; url=' + c + '">'), b[rd].close())
	} else b = d[xb](c, a, g);
	return b
}

function Vv(a, b, c) {
	a = a ? ph(a) : "";
	return Uv('javascript:"' + encodeURI(a) + '"', b, c)
}

function Wv(a, b) {
	b || (b = {});
	cb(b, b[K] || a[K] || "google_popup");
	xa(b, b[x] || 690);
	pb(b, b[M] || 500);
	var c = Uv(a, b);
	if (!c) return j;
	c[qc]();
	return m
}

function Xv(a, b) {
	this.Re = a;
	this.o = a.o;
	this.qn = b
}
Xv[G].jb = function () {
	if (!this.qn) return j;
	var a, b = cs(Cf);
	a: {
		try {
			a = gq(b);
			break a
		} catch (c) {}
		a = {}
	}
	return !(this.qn in a) || a[this.qn]
};

function Yv(a, b) {
	Xv[L](this, a);
	this.tx = b
}
R(Yv, Xv);
Yv[G].ya = function () {
	this.B = Ck("span");
	this.T = new this.tx(this.B, this.o);
	return this.B
};
Yv[G].s = function () {
	this.T.s()
};

function Zv(a) {
	Yv[L](this, a, gt)
}
R(Zv, Yv);

function $v(a) {
	Yv[L](this, a, jt)
}
R($v, Yv);
$v[G].jb = function () {
	return $.g().ek()
};

function aw(a) {
	Yv[L](this, a, Qt() ? it : ht)
}
R(aw, Yv);
aw[G].jb = function () {
	return !this.o[ac]()
};

function bw(a, b) {
	Xv[L](this, a, b);
	this.na = m
}
R(bw, Xv);
bw[G].s = function () {
	this.na && this.Rm()
};
Ta(bw[G], function () {
	this.na ? this.$() : this.kb()
});
bw[G].kb = function () {
	this.na = j;
	this.eu()
};
bw[G].$ = function () {
	this.na = m;
	this.Rm()
};

function cw(a) {
	Xv[L](this, a, lg);
	this.source = ""
}
R(cw, Xv);
cw[G].ya = function () {
	var a = q[rc]("span"),
		b = Hr(this.Re.Uc());
	Vn(a, b, "small", "right", this.source, function (c) {
		"on" == c.state && mr("item-plus-one", i, 1)
	}) && Ya(a, "item-plusone");
	return a
};
cw[G].jb = function () {
	return cw.a.jb[L](this) && !jh(Hr(this.o))
};
cw[G].s = function () {};

function dw(a, b) {
	this.o = a;
	this.nf = b;
	this.A = Ck("div");
	this.Zo = [];
	this.zb = [];
	this.X = [];
	this.ey = [];
	this.Vu = this.vl = m;
	this.Ef()
}
O = dw[G];
O.Uc = function () {
	return this.o
};
O.Vq = function () {
	return this.nf
};
O.Ik = function () {
	Fh(this.X, Oj);
	ew(this);
	fw(this);
	for (var a = 0, b; b = this.ey[a]; a++) b()
};

function ew(a) {
	for (var b = 0, c; c = a.Zo[b]; b++) c.s();
	a.Zo = []
}
O.Lg = function () {
	var a = this.o.zc("alternate");
	if (a) {
		var b = Uv("about:blank", {
			target: "GoogleReaderPopup" + Ln()
		});
		b ? (b.opener = k, b[rd].location = a) : ja("Grrr! A popup blocker may be preventing Google Reader from opening the page. If you have a popup blocker, try disabling it to open the window.")
	}
};

function gw(a) {
	!a.ei() && (!a.Vu && !a[ac]()) && a.cl()
}
O.Ef = function () {
	var a = this.o,
		b = {
			vc: this.uf(),
			origin: a.cc,
			nC: a.cc.Yj,
			oC: a.cc.h,
			dd: a.zc("alternate"),
			Uo: hw(this),
			authorName: this.sf(),
			je: a
		};
	b.Gj = this.xm(new Date(s[Gb](oa(this.o.We, 10) / 1E3)));
	b.Gc = a.Gc();
	b.Gc && (b.El = io(a.cc.d)[Md]);
	for (var c = P(this.Nw, this), d = P($.En, $), e = [], g = 0; g < a.lp[F]; g++) {
		var h = a.lp[g];
		if (!c || c(h)) {
			if (d) {
				var l = d(h.d);
				l && (h = {
					d: h.d,
					h: l
				})
			}
			e[w](h)
		}
	}
	b.qd = e;
	this.Ub = b;
	u(this.A, "");
	Ya(this.A, this.zm())
};
O.pm = function () {};
O.bq = function () {};
O.Nw = function (a) {
	var b = this.o,
		c = io(a.d)[Md];
	if (a.d.K == xo || b.Gc() && io(b.cc.d)[Md] == c) return m;
	a = b.kj;
	for (var b = 0, d; d = a[b]; b++)
		if (d.Qu == c) return m;
	return j
};

function iw(a) {
	var b = Ck("div", "entry-actions");
	a.zb = [];
	for (var c = $.zb, d = 0, e; e = c[d]; d++) e = new e(a), e.jb() && (b[uc] != k && b[v](Ck("wbr")), b[v](e.ya()), a.zb[w](e));
	return b
}

function fw(a) {
	for (var b = 0, c; c = a.zb[b]; b++) c.s();
	a.zb = []
}

function jw(a, b) {
	function c(e, g, h) {
		for (var l = 0; l < g[F]; l++) {
			var r = new e(g[l], d.o);
			h && (r.jt = h);
			d.Zo[w](r)
		}
	}
	ew(a);
	var d = a;
	c(gt, b);
	a[ac]() || c(ht, [k], P(a.hB, a))
}
O.dp = function () {
	var a = new gt(k, this.o);
	a[$c]();
	a.s()
};
O.cl = function () {
	if (!this[ac]()) {
		var a = new ht(k, this.o);
		a[$c]();
		a.s()
	}
};
O.hB = function () {
	this.ei() ? S(this.A, "read") : (T(this.A, "read"), Kr(this.o, Gp(Z)) && (this.Vu = j, Ws(this.o, "tracking-kept-unread")))
};
O.ei = function () {
	return ($.g().Hg() ? $.gn || ap($.g()) || $.g().Hc() || bp($.g()) : j) && this.o.ei()
};
O.isReadStateLocked = function () {
	return this.o[ac]() && !ap($.g()) && !$.g().Hc() && !bp($.g())
};
O.zm = function () {
	var a = ["entry", "entry-" + this.nf];
	this.ei() && a[w]("read");
	this[ac]() && a[w]("read-state-locked");
	return a[N](" ")
};
O.uf = function () {
	var a = this.o.Vc();
	!a && !this.o.Gc() && (a = "(title unknown)");
	return a
};
O.xm = function (a) {
	var b;
	(b = yn(a)) ? (a = xn(a, j), b = zn("%1 (%2)", [a, b])) : b = xn(a, m);
	return b
};

function hw(a) {
	if (a.o.Gc()) return a.o.sf();
	a = a.o.cc;
	return $.En(a.d) || a.h || "(title unknown)"
}

function kw(a, b) {
	var c = a.Ub,
		d = a.o;
	d.Mx || d.Vr || ap(c[rb].d) ? Gr(d, "related") && Gr(d, "related").d ? a.X[w](Wr(b, Gr(d, "related").d)) : jb(b, d.zc("related")) : a.X[w](Wr(b, c[rb].d))
}
O.sf = function () {
	return this.o.Gc() && !Lo(Zo(new Ep(io(this.o.cc.d)[Md]))) ? "you" : this.o.sf()
};

function lw(a, b) {
	"rtl" == a.o.Qp && S(b, "rtl")
}
O.Oo = function (a, b) {
	this.vl && this.Bf();
	try {
		var c = Y(this.A, "action-area");
		Hk(c)
	} catch (d) {}
	this.vl = j;
	this.ul = b;
	return this.Sl(a)
};
O.Bf = function () {
	if (this.ul) {
		var a = this.ul;
		this.ul = k;
		a.$()
	}
	try {
		var b = Y(this.A, "action-area");
		Hk(b)
	} catch (c) {}
	this.vl = m
};

function mw() {}
O = mw[G];
O.Iq = m;
O.Fg = m;
O.Zr = m;
O.Xr = m;
O.$m = m;

function nw(a, b) {
	a.Lb = b;
	return a
}
Fa(O, function () {
	return this.Lb
});

function ow(a, b) {
	a.Cw = b;
	return a
}

function pw(a, b) {
	a.Gw = b;
	return a
}

function qw(a, b) {
	a.Ux = b;
	return a
}

function rw(a) {
	return a.Fg
}
O.Ti = function (a) {
	return !ep(a)
};
O.Xm = function () {
	return m
};
var sw = {};

function tw(a, b, c, d) {
	return ['<object align="middle" width="', b, '" height="', c, '"><param name="allowScriptAccess" value="never"><param name="allowFullScreen" value="true"><param name="wmode" value="transparent"><param name="movie" value="', a, '"><embed ', d ? 'className="' + d + '" ' : "", 'width="', b, 'px" height="', c, 'px" type="application/x-shockwave-flash" src="', a, '" allowScriptAccess="never" allowFullScreen="true" quality="best" bgcolor="#ffffff" wmode="transparent" FlashVars="playerMode=embedded" pluginspage="http://www.macromedia.com/go/getflashplayer"></embed></object>'][N]("")
}

function uw(a, b) {
	this.ge = a instanceof ek ? a : new ek(a, b)
}
R(uw, Gu);
uw[G].Ja = function (a, b, c, d) {
	Du(gl(a), 0, a, b, this.ge, c, k, d)
};

function vw(a, b) {
	this.ge = a instanceof ek ? a : new ek(a, b)
}
R(vw, Gu);
vw[G].Ja = function (a, b, c, d) {
	var e;
	e = ok(a);
	var g = e[J];
	e = e[Wc];
	e = new ek(g[Wd] || e[Wd], g[Zc] || e[Zc]);
	g = this.ge.x + e.x;
	e = this.ge.y + e.y;
	var h = Eu(a),
		g = g - h.x;
	e -= h.y;
	Fu(new ek(g, e), a, b, c, k, k, d)
};

function ww(a, b) {
	vw[L](this, a, b)
}
R(ww, vw);
ww[G].hi = 0;
ww[G].Wk = function (a) {
	this.hi = a
};
ww[G].Ja = function (a, b, c, d) {
	var e = gl(a),
		e = jl(e),
		g;
	g = mk(a);
	g = !Si ? g.V[Wc] : g.V[J];
	g = new ek(this.ge.x + g[Wd], this.ge.y + g[Zc]);
	var h = b,
		l = Fu(g, a, h, c, e, 10, d);
	if (0 != (l & 496)) {
		if (l & 16 || l & 32) h ^= 2;
		if (l & 64 || l & 128) h ^= 1;
		l = Fu(g, a, h, c, e, 10, d);
		0 != (l & 496) && Fu(g, a, b, c, e, this.hi, d)
	}
};

function xw(a, b) {
	this.T = new Jl(this);
	this.Ao(a || k);
	b && (this.sc = b)
}
R(xw, Fl);
O = xw[G];
O.e = k;
O.Gv = j;
O.Np = k;
O.na = m;
O.$z = m;
O.wn = -1;
O.tn = -1;
O.yx = m;
O.uw = j;
O.sc = "toggle_display";
O.b = function () {
	return this.e
};
O.Ao = function (a) {
	this.na && f(p("Can not change this state of the popup while showing."));
	this.e = a
};
O.F = function () {
	return this.na
};
O.Ur = function () {
	return this.na || 150 > ah() - this.tn
};
O.D = function (a) {
	this.Ni && this.Ni[ad]();
	this.Zh && this.Zh[ad]();
	a ? this.Oi() : this.Xc()
};
O.Ja = Ng;
O.Oi = function () {
	if (!this.na && this.Sn()) {
		this.e || f(p("Caller must call setElement before trying to show the popup"));
		this.Ja();
		var a = ok(this.e);
		this.yx && this.T.j(a, "keydown", this.Hy, j);
		if (this.Gv)
			if (this.T.j(a, "mousedown", this.Vs, j), U) {
				var b;
				try {
					b = a[tb]
				} catch (c) {}
				for (; b && "IFRAME" == b[fc];) {
					try {
						var d = b[le] || b[Pc][rd]
					} catch (e) {
						break
					}
					a = d;
					b = a[tb]
				}
				this.T.j(a, "mousedown", this.Vs, j);
				this.T.j(a, "deactivate", this.Us)
			} else this.T.j(a, "blur", this.Us);
			"toggle_display" == this.sc ? (Ra(this.e[I], "visible"), xl(this.e,
			j)) : "move_offscreen" == this.sc && this.Ja();
		this.na = j;
		this.Ni ? (Lj(this.Ni, "end", this.xk, m, this), this.Ni[Bc]()) : this.xk()
	}
};
O.Xc = function (a) {
	if (!this.na || !this[A]({
		type: "beforehide",
		target: a
	})) return m;
	this.T && this.T.Qd();
	this.na = m;
	this.tn = ah();
	this.Zh ? (Lj(this.Zh, "end", Q(this.jq, a), m, this), this.Zh[Bc]()) : this.jq(a);
	return j
};
O.jq = function (a) {
	"toggle_display" == this.sc ? this.$z ? Il(this.rr, 0, this) : this.rr() : "move_offscreen" == this.sc && (this.e[I].top = "-10000px");
	this.Tn(a)
};
O.rr = function () {
	Ra(this.e[I], "hidden");
	xl(this.e, m)
};
O.Sn = function () {
	return this[A]("beforeshow")
};
O.xk = function () {
	this.wn = ah();
	this.tn = -1;
	this[A]("show")
};
O.Tn = function (a) {
	this[A]({
		type: "hide",
		target: a
	})
};
O.Vs = function (a) {
	a = a[K];
	!Kk(this.e, a) && ((!this.Np || Kk(this.Np, a)) && !(150 > ah() - this.wn)) && this.Xc(a)
};
O.Hy = function (a) {
	27 == a[D] && this.Xc(a[K]) && (a[Zb](), a[wd]())
};
O.Us = function (a) {
	if (this.uw) {
		var b = ok(this.e);
		if (U || Qi) {
			if (a = b[tb], !a || Kk(this.e, a) || "BODY" == a[je]) return
		} else if (a[K] != b) return;
		150 > ah() - this.wn || this.Xc()
	}
};
O.i = function () {
	xw.a.i[L](this);
	this.T.s();
	wj(this.Ni);
	wj(this.Zh);
	delete this.e;
	delete this.T
};

function yw(a, b) {
	this.mz = 4;
	this.Mb = b || i;
	xw[L](this, a)
}
R(yw, xw);
yw[G].Yt = function (a) {
	this.Mb = a || i;
	this.F() && this.Ja()
};
yw[G].Ja = function () {
	if (this.Mb) {
		var a = !this.F() && "move_offscreen" != this.sc,
			b = this.b();
		a && (Ra(b[I], "hidden"), xl(b, j));
		this.Mb.Ja(b, this.mz, this.li);
		a && xl(b, m)
	}
};

function zw(a, b, c) {
	this.Y = c || (a ? mk(pk(a)) : mk());
	yw[L](this, this.Y.k("div", {
		style: "position:absolute;display:none;"
	}));
	this.Tl = new ek(1, 1);
	this.kf = new Di;
	a && this.td(a);
	b != k && Lk(this.b(), b)
}
R(zw, yw);
var Aw = [];
O = zw[G];
O.Gb = k;
Ya(O, "goog-tooltip");
O.du = 500;
O.xx = 0;
O.v = function () {
	return this.Y
};
O.td = function (a) {
	a = pk(a);
	this.kf.add(a);
	V(a, "mouseover", this.ye, m, this);
	V(a, "mouseout", this.Vj, m, this);
	V(a, "mousemove", this.hr, m, this);
	V(a, "focus", this.Wc, m, this);
	V(a, "blur", this.Vj, m, this)
};
O.detach = function (a) {
	if (a) a = pk(a), Bw(this, a), this.kf[pc](a);
	else {
		for (var b = this.kf.ub(), c = 0; a = b[c]; c++) Bw(this, a);
		this.kf[Fc]()
	}
};

function Bw(a, b) {
	Mj(b, "mouseover", a.ye, m, a);
	Mj(b, "mouseout", a.Vj, m, a);
	Mj(b, "mousemove", a.hr, m, a);
	Mj(b, "focus", a.Wc, m, a);
	Mj(b, "blur", a.Vj, m, a)
}
O.Ao = function (a) {
	var b = this.b();
	b && Hk(b);
	zw.a.Ao[L](this, a);
	a && (b = this.Y.V[J], b[$b](a, b[Ld]))
};
O.ue = function () {
	return this.Ue ? this.F() ? 4 : 1 : this.Yh ? 3 : this.F() ? 2 : 0
};
O.Sn = function () {
	if (!xw[G].Sn[L](this)) return m;
	if (this[Nd])
		for (var a, b = 0; a = Aw[b]; b++) Kk(a.b(), this[Nd]) || a.D(m);
	Kh(Aw, this) || Aw[w](this);
	a = this.b();
	Ya(a, this[ld]);
	Cw(this);
	V(a, "mouseover", this.kr, m, this);
	V(a, "mouseout", this.jr, m, this);
	Dw(this);
	return j
};
O.Tn = function () {
	Lh(Aw, this);
	for (var a = this.b(), b, c = 0; b = Aw[c]; c++) b[Nd] && Kk(a, b[Nd]) && b.D(m);
	this.qt && Ew(this.qt);
	Mj(a, "mouseover", this.kr, m, this);
	Mj(a, "mouseout", this.jr, m, this);
	eb(this, i);
	0 == this.ue() && (this.Uk = m);
	xw[G].Tn[L](this)
};
O.Bs = function (a, b) {
	this[Nd] == a && this.kf[ge](this[Nd]) && (this.Uk || !this.sC ? (this.D(m), this.F() || (eb(this, a), this.Yt(b || Fw(this, 0)), this.D(j))) : eb(this, i));
	this.Ue = i
};
O.my = function (a) {
	this.Yh = i;
	a == this[Nd] && (this.Gb == k || this.Gb != this.b() && !this.kf[ge](this.Gb)) && (!this.Yp || !this.Yp.Gb) && this.D(m)
};

function Gw(a, b) {
	var c = Xk(a.Y);
	a.Tl.x = b[Uc] + c.x;
	a.Tl.y = b[Vc] + c.y
}
O.ye = function (a) {
	var b = Hw(this, a[K]);
	this.Gb = b;
	Cw(this);
	b != this[Nd] && (eb(this, b), this.Ue || (this.Ue = Il(P(this.Bs, this, b, i), this.du)), Iw(this), Gw(this, a))
};

function Hw(a, b) {
	try {
		for (; b && !a.kf[ge](b);) b = b[oe];
		return b
	} catch (c) {
		return k
	}
}
O.hr = function (a) {
	Gw(this, a);
	this.Uk = j
};
O.Wc = function (a) {
	this.Gb = a = Hw(this, a[K]);
	this.Uk = j;
	if (this[Nd] != a) {
		eb(this, a);
		var b = Fw(this, 1);
		Cw(this);
		this.Ue || (this.Ue = Il(P(this.Bs, this, a, b), this.du));
		Iw(this)
	}
};

function Fw(a, b) {
	if (0 == b) {
		var c = a.Tl.Na();
		return new Jw(c)
	}
	return new Kw(a.Gb)
}

function Iw(a) {
	if (a[Nd])
		for (var b, c = 0; b = Aw[c]; c++) Kk(b.b(), a[Nd]) && (b.Yp = a, a.qt = b)
}
O.Vj = function (a) {
	var b = Hw(this, a[K]),
		c = Hw(this, a[Ab]);
	b != c && (b == this.Gb && (this.Gb = k), Dw(this), this.Uk = m, this.F() && (!a[Ab] || !Kk(this.b(), a[Ab])) ? Ew(this) : eb(this, i))
};
O.kr = function () {
	var a = this.b();
	this.Gb != a && (Cw(this), this.Gb = a)
};
O.jr = function (a) {
	var b = this.b();
	if (this.Gb == b && (!a[Ab] || !Kk(b, a[Ab]))) this.Gb = k, Ew(this)
};

function Dw(a) {
	a.Ue && (Hl[Db](a.Ue), a.Ue = i)
}

function Ew(a) {
	2 == a.ue() && (a.Yh = Il(P(a.my, a, a[Nd]), a.xx))
}

function Cw(a) {
	a.Yh && (Hl[Db](a.Yh), a.Yh = i)
}
O.i = function () {
	this.D(m);
	Dw(this);
	this[Dc]();
	this.b() && Hk(this.b());
	this.Gb = k;
	delete this.Y;
	zw.a.i[L](this)
};

function Jw(a, b) {
	uw[L](this, a, b)
}
R(Jw, uw);
Jw[G].Ja = function (a, b, c) {
	b = gl(a);
	b = jl(b);
	c = c ? new Yk(c.top + 10, c[Ce], c[Zd], c[B] + 10) : new Yk(10, 0, 0, 10);
	Fu(this.ge, a, 4, c, b, 9) & 496 && Fu(this.ge, a, 4, c, b, 5)
};

function Kw(a) {
	Hu[L](this, a, 3)
}
R(Kw, Hu);
Kw[G].Ja = function (a, b, c) {
	var d = new ek(10, 0);
	Du(this[ke], this.cf, a, b, d, c, 9) & 496 && Du(this[ke], 2, a, 1, d, c, 5)
};

function Lw(a, b) {
	var c;
	a instanceof Lw ? (this.jc = Lg(b) ? b : a.jc, Mw(this, a.Qe), Nw(this, a.Zi), Ow(this, a.ie), Pw(this, a.dh), Qw(this, a.Od), Rw(this, a.mc.Na()), Sw(this, a.Nh)) : a && (c = Vj(qa(a))) ? (this.jc = !! b, Mw(this, c[1] || "", j), Nw(this, c[2] || "", j), Ow(this, c[3] || "", j), Pw(this, c[4]), Qw(this, c[5] || "", j), Rw(this, c[6] || "", j), Sw(this, c[7] || "", j)) : (this.jc = !! b, this.mc = new Tw(k, k, this.jc))
}
O = Lw[G];
O.Qe = "";
O.Zi = "";
O.ie = "";
O.dh = k;
O.Od = "";
O.Nh = "";
O.Qx = m;
O.jc = m;
O.toString = function () {
	var a = [],
		b = this.Qe;
	b && a[w](Uw(b, Vw), ":");
	if (b = this.ie) {
		a[w]("//");
		var c = this.Zi;
		c && a[w](Uw(c, Vw), "@");
		a[w](nh(b));
		b = this.dh;
		b != k && a[w](":", qa(b))
	}
	if (b = this.Od) this.ie && "/" != b[Tb](0) && a[w]("/"), a[w](Uw(b, "/" == b[Tb](0) ? Ww : Xw));
	(b = this.mc[bd]()) && a[w]("?", b);
	(b = this.Nh) && a[w]("#", Uw(b, Yw));
	return a[N]("")
};

function Zw(a, b) {
	var c = a.Na(),
		d = !! b.Qe;
	d ? Mw(c, b.Qe) : d = !! b.Zi;
	d ? Nw(c, b.Zi) : d = !! b.ie;
	d ? Ow(c, b.ie) : d = b.dh != k;
	var e = b.Od;
	if (d) Pw(c, b.dh);
	else if (d = !! b.Od) {
		if ("/" != e[Tb](0))
			if (a.ie && !a.Od) e = "/" + e;
			else {
				var g = c.Od.lastIndexOf("/"); - 1 != g && (e = c.Od[Xc](0, g + 1) + e)
			}
		if (".." == e || "." == e) e = "";
		else if (wh(e, "./") || wh(e, "/.")) {
			for (var g = eh(e, "/"), e = e[td]("/"), h = [], l = 0; l < e[F];) {
				var r = e[l++];
				"." == r ? g && l == e[F] && h[w]("") : ".." == r ? ((1 < h[F] || 1 == h[F] && "" != h[0]) && h.pop(), g && l == e[F] && h[w]("")) : (h[w](r), g = j)
			}
			e = h[N]("/")
		}
	}
	d ? Qw(c,
		e) : d = "" !== b.mc[bd]();
	d ? Rw(c, b.mc[bd]() ? sa(b.mc[bd]()) : "") : d = !! b.Nh;
	d && Sw(c, b.Nh);
	return c
}
O.Na = function () {
	return new Lw(this)
};

function Mw(a, b, c) {
	$w(a);
	a.Qe = c ? b ? sa(b) : "" : b;
	a.Qe && (a.Qe = a.Qe[z](/:$/, ""));
	return a
}

function Nw(a, b, c) {
	$w(a);
	a.Zi = c ? b ? sa(b) : "" : b;
	return a
}

function Ow(a, b, c) {
	$w(a);
	a.ie = c ? b ? sa(b) : "" : b;
	return a
}

function Pw(a, b) {
	$w(a);
	b ? (b = ea(b), (ta(b) || 0 > b) && f(p("Bad port number " + b)), a.dh = b) : a.dh = k;
	return a
}

function Qw(a, b, c) {
	$w(a);
	a.Od = c ? b ? sa(b) : "" : b;
	return a
}

function Rw(a, b, c) {
	$w(a);
	b instanceof Tw ? (a.mc = b, a.mc.Do(a.jc)) : (c || (b = Uw(b, ax)), a.mc = new Tw(b, k, a.jc));
	return a
}
O.gb = function () {
	return this.mc[bd]()
};

function bx(a, b, c) {
	$w(a);
	a.mc.set(b, c);
	return a
}

function Sw(a, b, c) {
	$w(a);
	a.Nh = c ? b ? sa(b) : "" : b;
	return a
}

function $w(a) {
	a.Qx && f(p("Tried to modify a read-only Uri"))
}
O.Do = function (a) {
	this.jc = a;
	this.mc && this.mc.Do(a);
	return this
};

function Uw(a, b) {
	return Sg(a) ? encodeURI(a)[z](b, cx) : k
}

function cx(a) {
	a = a[Xd](0);
	return "%" + (a >> 4 & 15)[bd](16) + (a & 15)[bd](16)
}
var Vw = /[#\/\?@]/g,
	Xw = /[\#\?:]/g,
	Ww = /[\#\?]/g,
	ax = /[\#\?@]/g,
	Yw = /#/g;

function Tw(a, b, c) {
	this.Yb = a || k;
	this.jc = !! c
}

function dx(a) {
	if (!a.za && (a.za = new zi, a.N = 0, a.Yb))
		for (var b = a.Yb[td]("&"), c = 0; c < b[F]; c++) {
			var d = b[c][cc]("="),
				e = k,
				g = k;
			0 <= d ? (e = b[c][be](0, d), g = b[c][be](d + 1)) : e = b[c];
			e = oh(e);
			e = ex(a, e);
			a.add(e, g ? oh(g) : "")
		}
}
O = Tw[G];
O.za = k;
O.N = k;
O.qe = function () {
	dx(this);
	return this.N
};
O.add = function (a, b) {
	dx(this);
	this.Yb = k;
	a = ex(this, a);
	var c = this.za.ma(a);
	c || this.za.set(a, c = []);
	c[w](b);
	this.N++;
	return this
};
O.remove = function (a) {
	dx(this);
	a = ex(this, a);
	return this.za.xd(a) ? (this.Yb = k, this.N -= this.za.ma(a)[F], this.za[pc](a)) : m
};
Na(O, function () {
	this.za = this.Yb = k;
	this.N = 0
});
O.Gf = function () {
	dx(this);
	return 0 == this.N
};
O.xd = function (a) {
	dx(this);
	a = ex(this, a);
	return this.za.xd(a)
};
O.Ql = function (a) {
	var b = this.ub();
	return Kh(b, a)
};
O.xf = function () {
	dx(this);
	for (var a = this.za.ub(), b = this.za.xf(), c = [], d = 0; d < b[F]; d++)
		for (var e = a[d], g = 0; g < e[F]; g++) c[w](b[d]);
	return c
};
O.ub = function (a) {
	dx(this);
	var b = [];
	if (a) this.xd(a) && (b = Nh(b, this.za.ma(ex(this, a))));
	else {
		a = this.za.ub();
		for (var c = 0; c < a[F]; c++) b = Nh(b, a[c])
	}
	return b
};
O.set = function (a, b) {
	dx(this);
	this.Yb = k;
	a = ex(this, a);
	this.xd(a) && (this.N -= this.za.ma(a)[F]);
	this.za.set(a, [b]);
	this.N++;
	return this
};
O.ma = function (a, b) {
	var c = a ? this.ub(a) : [];
	return 0 < c[F] ? qa(c[0]) : b
};
O.toString = function () {
	if (this.Yb) return this.Yb;
	if (!this.za) return "";
	for (var a = [], b = this.za.xf(), c = 0; c < b[F]; c++)
		for (var d = b[c], e = nh(d), d = this.ub(d), g = 0; g < d[F]; g++) {
			var h = e;
			"" !== d[g] && (h += "=" + nh(d[g]));
			a[w](h)
		}
	return this.Yb = a[N]("&")
};
O.Na = function () {
	var a = new Tw;
	a.Yb = this.Yb;
	this.za && (a.za = this.za.Na(), a.N = this.N);
	return a
};

function ex(a, b) {
	var c = qa(b);
	a.jc && (c = c[Be]());
	return c
}
O.Do = function (a) {
	a && !this.jc && (dx(this), this.Yb = k, xi(this.za, function (b, c) {
		var d = c[Be]();
		c != d && (this[pc](c), this[pc](d), 0 < b[F] && (this.Yb = k, this.za.set(ex(this, d), Oh(b)), this.N += b[F]))
	}, this));
	this.jc = a
};

function fx(a, b, c, d, e, g) {
	this.ba = a;
	this.Cz = b;
	this.Oz = c;
	this.sw = d;
	this.qu = e;
	this.Pz = g;
	this.Ah = {
		zC: 0,
		Hh: 0
	}
}

function gx(a) {
	var b = a.Ah.Hh;
	a.Ah.Hh += a.Pz();
	var c = a.Ah.Hh;
	for (a.qu(a.ba.Ph(), a.ba.Dg()); b < c; b++) a.ba.Uc(b, P(a.zf, a, b))
}
fx[G].zf = function (a, b) {
	!b && 0 == a ? this.sw() : (b && this.Cz(a, b), a == this.Ah.Hh - 1 && this.Oz(), this.qu(this.ba.Ph(), this.ba.Dg()))
};

function hx(a) {
	this.Bj = m;
	this.d = a
}
hx[G].jb = function (a, b) {
	b(a != k && this.d != k && a.W(this.d))
};
var $;

function ix() {
	this.ba = k;
	this.xg = [];
	this.$p = [];
	this.zb = [];
	this.vC = [];
	this.va = m;
	this.Id = [];
	this.dk = []
}
O = ix[G];
O.Bp = function () {};
O.Eq = function () {};
O.ua = function () {
	this.Jx || (this.Bp(), this.Jx = j)
};

function jx(a) {
	a.Fq || (a.Fq = X("entries"));
	return a.Fq
}

function kx(a) {
	a.Tk || (a.Tk = X("viewer-entries-container"), a.Tk || (a.Tk = jx(a)));
	return a.Tk
}
mb(O, function () {
	lx(this, this.$p);
	this.vb = m;
	this.dk = [];
	this.or = m;
	if (this.ea)
		for (var a = 0, b; b = this.ea[a]; a++) b.Ik();
	this.ea = [];
	u(jx(this), "");
	this.Gg = j;
	this.da = this.ug = -1
});
Oa(O, function (a, b) {
	this.va ? mx && mx[Ic]() : this.g() && fq(this.g(), m, a, b)
});
O.g = function () {
	return this.ba && !this.va ? this.ba.d : k
};
O.Em = function () {
	return Xo(this.g(), Yo(Z)) ? "starred" : "default"
};
O.yf = function (a, b) {
	var c = b || this.g();
	rp.Vc(c, this.ba, function (d) {
		if (c.K.Ha) {
			var e = io(c);
			if ((e[E] == lf || Xo(c, Vo(Z)) || d == k) && !Lo(e)) d = xp(e)
		}
		a(d)
	})
};

function nx(a, b, c) {
	a.yf(function (d) {
		b(d ? vh(d) : "")
	}, c)
}

function ox(a, b) {
	for (var c = 0, d; d = a.xg[c]; c++)
		if (d == b) {
			a.xg[we](c, 1);
			break
		}
}

function lx(a, b) {
	b = b[Hb]();
	for (var c = 0, d; d = b[c]; c++) d()
}
O.fill = function (a, b) {
	this.Kw = Ln();
	this.Zn(a, b);
	px(this, a, P(this.om, this, a), b)
};
O.om = function (a) {
	this.Yg = new fx(this.ba, P(this.zf, this), P(this.dm, this), P(this.ar, this), P(this.hp, this), P(this.Uw, this));
	var b = qx(this);
	b.Ti(this.g()) ? this.jd(b, j) : this.jd(rx(this), j);
	this.ug = this.da = -1;
	this[me]();
	Cr();
	dq();
	S(X("quick-add-success"), "hidden");
	this.Oc();
	gx(this.Yg);
	sx(this);
	var c = this;
	Qs(this.g(), function (d) {
		d = (c.gn = d) || dp(a);
		var e = a && Jo(a);
		$h(X("chrome"), "unsubscribed-stream", !d || e);
		a && (c.gn ? xr.xe(a, P(c.Ou, c)) : dp(a) && c.il.La("New items"))
	});
	lx(this, this.xg)
};
O.kq = function (a, b) {
	this.ba = qs.fa(a, 20);
	b()
};

function px(a, b, c, d) {
	a.ba && a.ba != d && (fr(), a.ba[od]());
	d ? (a.ba = d, dp(b) && (a.ba.em = m), c()) : a.kq(b, function () {
		dp(b) && (a.ba.em = m);
		c()
	})
}
O.zf = function (a, b) {
	this.vb || (fr(), this.Pr = j, this.Qz = Ln());
	var c = this.ea[F],
		c = [new(qx(this).Cw)(b, c)];
	Ph(this.ea, c);
	for (var d = 0, e; e = c[d]; d++) this.Ir(e.A), this.Gq(e);
	this.vb || (this.vb = j, this.Yk());
	!this.or && b != k && (tx(this, m), this.or = j)
};

function tx(a, b) {
	for (var c = a.g(), d = 0, e; e = a.Id[d]; d++)(!b || e.Bj) && e.jb(c, Q(function (g, h) {
		if (h) {
			var l = g.ya();
			Fk(l, jx(a)[uc]);
			a.dk[w](l);
			a.Oc()
		}
	}, e))
}
O.Yk = function () {
	var a = kx(this);
	Ra(a[I], "visible");
	T(a, "hidden");
	this.Oc()
};
O.dm = function () {
	var a = this.ea[F];
	if (this.Pr && 0 < a) {
		var b = Ln(),
			a = 1E3 * ((b - this.Qz) / a),
			b = 1E3 * (b - this.Kw),
			c = qx(this);
		if (c) {
			var d = c.Ux,
				c = c.Gw;
			d && mr(d, a);
			c && mr(c, b)
		}
		this.Pr = m
	}
	this.Gg = m
};
O.ar = function () {
	fr()
};
O.hp = function (a, b) {
	this.Nm = b || a > this.ea[F];
	this.Ih || (this.Ih = X("entries-status"));
	this.Gg ? this.fu() : this.qr()
};
O.fu = function () {
	this.Ih || (this.Ih = X("entries-status"));
	var a = this.Ih;
	S(a, "loading");
	u(a, "Loading more items...")
};
O.qr = function () {
	var a = this.Ih;
	T(a, "loading");
	u(a, "");
	"oldest" == ux(vx, this.g()).id && u(a, "sorted by oldest")
};
O.Uw = function () {
	return rw(qx(this)) ? this.vb ? 1 : 5 : 20
};
O.jh = function (a, b) {
	b || (Et(pf, a[bd]()), this[Ic](m))
};
O.jd = function (a) {
	if (this.va) return m;
	var b = this.g();
	b && $h(jx(this), "single-source", !(b.K.Ha || b instanceof Co || Jo(b) || b.K == go || ap(b)));
	var b = jx(this),
		c;
	for (c in sw) {
		var d = sw[c];
		d && a != d && T(b, d.Fg ? "cards" : d.Lb)
	}
	S(b, a.Fg ? "cards" : a.Lb);
	this.wo = a;
	return j
};

function rx(a) {
	var b;
	a: {
		var c;
		b: {
			if (!St && (c = On("view"))) break b;
			c = "true" == cs(rf) ? "cards" : "list"
		}
		for (b in sw)
			if (sw[b][nc]() == c) {
				b = sw[b];
				break a
			}
		b = i
	}
	a = a.g();
	if (!a) return b;
	var d = c = k,
		e;
	for (e in sw)!c && sw[e].Ti(a) && (c = sw[e]), !d && sw[e].Xm(a) && (d = sw[e]);
	b && !b.Ti(a) && (b = k);
	return d || b || c
}

function qx(a) {
	return a.wo || rx(a)
}
O.Gn = function (a) {
	if (this.vb && !this.va && (this.gn || dp(this.g())) && !Jo(this.g()) && 0 < this.ea[F]) {
		var b = this;
		nx(this, function (c) {
			var d;
			"newest" == ux(vx, b.g()).id && (d = b.ea[0].Uc().We);
			a && 0 != a.nd && (d = 1E3 * (ah() - a.nd + 1) - 1);
			Ts(b.g(), d, c, P(b[Ic], b, m), P(b.xs, b), P(b.gy, b), P(b.hy, b), a)
		})
	}
};
O.xs = function (a, b, c, d) {
	Ss(a, b, c, d)
};
O.gy = function () {};
O.hy = function () {};

function wx(a) {
	return a.ea[a.da]
}

function xx(a) {
	return a.va || !a.vb || !wx(a) ? k : wx(a)
}

function yx(a, b, c) {
	a.ba.Uc(b, function (d) {
		if (d) {
			for (; b >= a.ea[F];) gx(a.Yg);
			c(a.ea[b])
		} else c(k)
	})
}
O.Gq = function () {};
O.Ir = function (a) {
	jx(this)[v](a)
};
O.dp = function () {
	xx(this) && xx(this).dp()
};
O.cl = function () {
	xx(this) && xx(this).cl()
};
O.Ak = function () {};
O.En = function () {
	return k
};
O.Oc = function () {};

function zx(a, b) {
	var c = xx(a);
	if (c)
		for (var d = 0, e; e = c.zb[d]; d++) e instanceof b && e[$c]()
}
Kg("getPermalink", function () {
	var a;
	xx($) ? (a = xx($).Uc(), a = {
		url: Hr(a),
		title: a.Vc()
	}) : a = k;
	return a
}, i);
for (var Ax = ["feedads.googleadservices.com", "feedads.g.doubleclick.net"], Bx = Ax, Cx = Ax, Dx = [], Ex = 0; Ex < Ax[F]; Ex++) Dx[w]('iframe[src*="' + Ax[Ex] + '"]');
var Fx = Dx[N](",");

function Gx(a) {
	a = Nr(a);
	wn(a, "_blank");
	for (var b = a[Tc]("iframe"), c = 0; c < b[F]; c++) {
		var d = new Lw(b[c].src);
		Kh(Cx, d.ie) && (bx(d, "authuser", aa), b[c].src = d[bd]())
	}
	b = Ck("div");
	c = Ck("div", {
		"class": "item-body"
	});
	c[v](a);
	b[v](c);
	return b
}

function Hx(a, b) {
	this.yw = a;
	this.yh = b
}
Hx[G].Yl = function () {
	this.yh[v](Gx(this.yw))
};
var Ix = {
	T: Hx,
	Jl: function () {
		return j
	}
};

function Jx(a) {
	var b = "",
		c = a[je][Be]();
	if (("embed" == c || "iframe" == c) && a[Rd]("src")) b = a[Rd]("src");
	else if ("object" == c)
		for (var d = a[Tc]("param"), e = 0, g; g = d[e]; e++) {
			if (g[Rd]("name") && "movie" == g[Rd]("name")[Be]()) {
				b = g[Rd]("value");
				break
			}
		} else if ("audio" == c || "video" == c)
			if (b = a[Rd]("src"), !b) {
				d = a[Tc]("source");
				for (e = 0; g = d[e]; e++)
					if (g[Rd]("src")) {
						b = g[Rd]("src");
						break
					}
			}
			"" != b && (g = Xj(Vj(b)[3] || k), Kh(Bx, g) || (e = a[Rd]("width") || "500px", d = a[Rd]("height") || "400px", "iframe" == c && "reader.googleusercontent.com" == g ? (c = dk(b,
		"flashVars"), b = dk(b, "src")) : c = a[Rd]("flashVars"), c && (c = "?" + c, fh(b, ".swf") && (b += c), e = dk(c, "width") || e, d = dk(c, "height") || d), c = Ck("span", {
		"class": "link popout",
		title: "Click to open in a new window"
	}), nb(c, wh(b, "http://reader.googleusercontent.com/reader/ui/3523697345-audio-player.swf") ? Q(Kx, a.cloneNode(j), e, d) : Q(Lx, b, e, d)), u(c, "Popout"), a[oe][$b](c, a[Oc])))
}

function Lx(a, b, c) {
	Wv(a, {
		target: "_blank",
		width: b,
		height: c,
		toolbar: m,
		scrollbars: m,
		resizable: m,
		menubar: m
	})
}

function Kx(a, b, c) {
	b = Uv("", {
		target: "_blank",
		width: b,
		height: c,
		toolbar: m,
		scrollbars: m,
		resizable: m,
		menubar: m
	});
	c = b[rd];
	var d = c[Tc]("head")[0];
	if (d) {
		for (var e = q[Tc]("head")[0][Tc]("link"), g = "", h = 0, l; l = e[h]; h++)
			if ("text/css" == l[Rd]("type")) {
				g = l[ae];
				break
			}
		e = (new nk(c)).ol("link", {
			rel: "stylesheet",
			type: "text/css",
			href: g
		});
		d[v](e)
	}
	S(c[J], "popout-body");
	d = (new nk(c)).ol("div", {
		"class": "popout-container"
	});
	c[J][v](d);
	b[rd].importNode && (a = c.importNode(a, j));
	d[v](a)
}

function Mx(a, b) {
	this.ws = a;
	this.yh = b
}
var Nx;

function Ox(a) {
	if (a == k) return m;
	var b = a.sc;
	return !a.Cf || !b ? m : j
}
Mx[G].Yl = function () {
	for (var a = Gh(this.ws.Nd.enclosure, Ox), b = [], c = 0, d; d = a[c]; c++) {
		var e;
		a: switch (Kn(d.sc)) {
		case "audio":
			e = "Original audio source";
			break a;
		case "video":
			e = "Original video source";
			break a;
		default:
			e = "Original enclosure"
		}
		var g = d.Cf,
			h = k;
		try {
			var l = g[td]("/");
			0 < l[F] && (h = oh(l[l[F] - 1]));
			h && 0 < h[cc]("?") && (h = h[be](0, h[cc]("?")))
		} catch (r) {}
		d = d.sc;
		var t = "audio" == Kn(d) || "mp3" == d[Be]();
		b[w]({
			bd: e,
			href: g,
			Fs: d,
			name: h,
			Nr: t
		})
	}
	a = '<div class="entry-enclosure"><div class="item-body"></div><div class="audio-player-container player">';
	c =
		b[F];
	for (e = 0; e < c; e++) g = b[e], a += (g.Nr ? '<div class="audio-player-placeholder"></div>' : "") + '<div class="view-enclosure-parent"><a href="' + W(g[ae]) + '" target="_blank"><span class="view-enclosure">' + W(g.bd) + " " + (g[Lc] ? "(" + W(g[Lc]) + ")" : "") + "</span></a></div>";
	a = sn(a + "</div></div>");
	Y(a, "item-body")[v](Gx(this.ws));
	Px(this, a, b);
	this.yh[v](a)
};
var Qx = {};

function Rx(a) {
	a in Qx || (Nx || (Nx = q[rc]("audio")), Qx[a] = Nx.canPlayType && Nx.canPlayType(a));
	return Qx[a]
}

function Px(a, b, c) {
	a = Gh(c, function (h) {
		return h.Nr
	});
	b = tk("div", "audio-player-placeholder", b);
	if (b[F] == a[F]) {
		c = 0;
		for (var d; d = a[c]; c++)
			if (Rx(d.Fs)) {
				var e = Ck("audio", {
					width: 400,
					height: 27,
					controls: j
				}),
					g = q[rc]("source");
				g.src = d[ae];
				La(g, d.Fs);
				e[v](g);
				Ik(e, b[c])
			} else d = bk("http://reader.googleusercontent.com/reader/ui/3523697345-audio-player.swf", "audioUrl", d[ae]), u(b[c], tw(d, 400, 27, "audio-player-embed"))
	}
}
var Sx = {
	T: Mx,
	Jl: function (a) {
		return (a = a.Nd.enclosure) && 0 < Gh(a, Ox)[F]
	}
}, Tx = [{
		ky: /^feed\/http:\/\/video\.google\.com\/.*(video).*/i
	}];

function Ux(a, b) {
	this.Fn = a;
	this.yh = b;
	this.wC = Vx(a)
}

function Vx(a) {
	a = a.cc.d[C];
	for (var b = 0, c; c = Tx[b]; b++)
		if (c.ky[yb](a)) return c;
	return k
}
Ux[G].Yl = function () {
	var a = Gx(this.Fn);
	if (Vr(this.Fn)) {
		for (var b = a[Tc]("embed"); b[0];) Hk(b[0]);
		var b = Gr(this.Fn, "enclosure").Cf,
			c = Ck("div", "video-player");
		u(c, tw(b, 400, 326));
		try {
			var d = a[Tc]("img")[0];
			d[oe][Hd](d)
		} catch (e) {}
		a[$b](c, a[uc])
	}
	this.yh[v](a)
};
var Wx = {
	T: Ux,
	Jl: function (a) {
		return !a ? m : (Vr(a) || Vx(a) != k) && !(0 < Nr(a)[Tc]("embed")[F])
	}
}, Xx = {
		8: "backspace",
		9: "tab",
		13: "enter",
		16: "shift",
		17: "ctrl",
		18: "alt",
		19: "pause",
		20: "caps-lock",
		27: "esc",
		32: "space",
		33: "pg-up",
		34: "pg-down",
		35: "end",
		36: "home",
		37: "left",
		38: "up",
		39: "right",
		40: "down",
		45: "insert",
		46: "delete",
		48: "0",
		49: "1",
		50: "2",
		51: "3",
		52: "4",
		53: "5",
		54: "6",
		55: "7",
		56: "8",
		57: "9",
		59: "semicolon",
		61: "equals",
		65: "a",
		66: "b",
		67: "c",
		68: "d",
		69: "e",
		70: "f",
		71: "g",
		72: "h",
		73: "i",
		74: "j",
		75: "k",
		76: "l",
		77: "m",
		78: "n",
		79: "o",
		80: "p",
		81: "q",
		82: "r",
		83: "s",
		84: "t",
		85: "u",
		86: "v",
		87: "w",
		88: "x",
		89: "y",
		90: "z",
		93: "context",
		96: "num-0",
		97: "num-1",
		98: "num-2",
		99: "num-3",
		100: "num-4",
		101: "num-5",
		102: "num-6",
		103: "num-7",
		104: "num-8",
		105: "num-9",
		106: "num-multiply",
		107: "num-plus",
		109: "num-minus",
		110: "num-period",
		111: "num-division",
		112: "f1",
		113: "f2",
		114: "f3",
		115: "f4",
		116: "f5",
		117: "f6",
		118: "f7",
		119: "f8",
		120: "f9",
		121: "f10",
		122: "f11",
		123: "f12",
		186: "semicolon",
		187: "equals",
		189: "dash",
		188: ",",
		190: ".",
		191: "/",
		192: "~",
		219: "open-square-bracket",
		220: "\\",
		221: "close-square-bracket",
		222: "single-quote",
		224: "win"
	};

function Yx(a) {
	this.Mi = {};
	this.Md = {
		Wf: [],
		time: 0
	};
	this.Vw = ti(Zx);
	this.GA = ti($x);
	this.Gp = j;
	this.tv = this.xv = m;
	this.qy = j;
	this.Er(a)
}
var ay;
R(Yx, Fl);
var Zx = [27, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 19],
	$x = "color date datetime datetime-local email month number password search tel text time url week".split(" "),
	by = {
		jv: "shortcut",
		iv: "shortcut_"
	};
O = Yx[G];
O.zz = function (a, b) {
	var c = cy,
		d = this.Mi,
		e = arguments;
	if (Sg(e[1])) {
		for (var e = e[1], e = e[z](/[ +]*\+[ +]*/g, "+")[z](/[ ]+/g, " ")[Be](), e = e[td](" "), g = [], h, l = 0; h = e[l]; l++) {
			var r = h[td]("+"),
				t;
			h = 0;
			for (var y, H = 0; y = r[H]; H++) {
				switch (y) {
				case "shift":
					h |= 1;
					continue;
				case "ctrl":
					h |= 2;
					continue;
				case "alt":
					h |= 4;
					continue;
				case "meta":
					h |= 8;
					continue
				}
				t = y;
				if (!ay) {
					r = {};
					y = i;
					for (y in Xx) r[Xx[y]] = y;
					ay = r
				}
				t = ay[t];
				break
			}
			g[w]({
				keyCode: t,
				Is: h
			})
		}
		e = g
	} else {
		g = e;
		l = 1;
		Qg(e[1]) && (g = e[1], l = 0);
		for (e = []; l < g[F]; l += 2) e[w]({
			keyCode: g[l],
			Is: g[l + 1]
		})
	}
	c(d,
		e, a)
};
O.i = function () {
	Yx.a.i[L](this);
	this.Mi = {};
	this.aq()
};
O.Er = function (a) {
	this.Kd = a;
	V(this.Kd, "keydown", this.Dc, m, this);
	Ki && (Ri && ej("1.8")) && V(this.Kd, "keyup", this.fr, m, this);
	Li && !Ri && (V(this.Kd, "keypress", this.lr, m, this), V(this.Kd, "keyup", this.mr, m, this))
};
O.fr = function (a) {
	if (224 == a[D]) this.Ds = j, Il(function () {
		this.Ds = m
	}, 400, this);
	else {
		var b = a[dc] || this.Ds;
		if ((67 == a[D] || 88 == a[D] || 86 == a[D]) && b) Aa(a, b), this.Dc(a)
	}
};

function dy(a, b) {
	return Li && !Ri && b[sd] && b[dd] && !b[ie]
}
O.lr = function (a) {
	32 < a[D] && dy(this, a) && (this.Wr = j)
};
O.mr = function (a) {
	!this.Wr && dy(this, a) && this.Dc(a)
};
O.aq = function () {
	Mj(this.Kd, "keydown", this.Dc, m, this);
	Ki && (Ri && ej("1.8")) && Mj(this.Kd, "keyup", this.fr, m, this);
	Li && !Ri && (Mj(this.Kd, "keypress", this.lr, m, this), Mj(this.Kd, "keyup", this.mr, m, this));
	this.Kd = k
};

function cy(a, b, c) {
	var d = b[zb](),
		d = d[D] & 255 | d.Is << 8,
		e = a[d];
	e && (c && (0 == b[F] || Sg(e))) && f(p("Keyboard shortcut conflicts with existing shortcut"));
	b[F] ? (e || (e = a[d] = {}), cy(e, b, c)) : a[d] = c
}

function ey(a, b, c, d) {
	c = c || 0;
	return (d = (d || a.Mi)[b[c]]) && !Sg(d) && 1 < b[F] - c ? ey(a, b, c + 1, d) : d
}
O.Dc = function (a) {
	var b;
	b = a[D];
	if (16 == b || 17 == b || 18 == b) b = m;
	else {
		var c = a[K],
			d = "TEXTAREA" == c[je] || "INPUT" == c[je] || "BUTTON" == c[je] || "SELECT" == c[je],
			e = !d && (c.isContentEditable || c[Gd] && "on" == c[Gd].designMode);
		b = !d && !e || this.Vw[b] || this.tv ? j : e ? m : this.qy && (a[dd] || a[sd] || a[dc]) ? j : "INPUT" == c[je] && this.GA[c[E]] ? 13 == b : "INPUT" == c[je] || "BUTTON" == c[je] ? 32 != b : m
	} if (b)
		if ("keydown" == a[E] && dy(this, a)) this.Wr = m;
		else {
			b = (Ri ? im(a[D]) : a[D]) & 255 | ((a[ie] ? 1 : 0) | (a[sd] ? 2 : 0) | (a[dd] ? 4 : 0) | (a[dc] ? 8 : 0)) << 8;
			var g, h, c = ah();
			this.Md.Wf[F] &&
				1500 >= c - this.Md.time ? g = ey(this, this.Md.Wf) : Va(this.Md.Wf, 0);
			g = g ? g[b] : this.Mi[b];
			g || (g = this.Mi[b], this.Md.Wf = []);
			g && Sg(g) ? h = g : g ? (this.Md.Wf[w](b), this.Md.time = c, Ri && a[Zb]()) : Va(this.Md.Wf, 0);
			h && (this.Gp && a[Zb](), this.xv && a[wd](), g = a[K], b = this[A](new fy(by.jv, h, g)), (b &= this[A](new fy(by.iv + h, h, g))) || a[Zb](), Va(this.Md.Wf, 0))
		}
};

function fy(a, b, c) {
	xj[L](this, a, c);
	this.identifier = b
}
R(fy, xj);

function gy() {
	Yx[L](this, q)
}
R(gy, Yx);
gy[G].Er = function () {
	this.ga = new sm(q);
	V(this.ga, "key", this.Dc, m, this)
};
gy[G].aq = function () {
	Mj(this.ga, "key", this.Dc, m, this);
	this.ga.s();
	this.ga = k
};

function hy() {
	this.T = new gy;
	this.T.Gp = m;
	this.Ol = this.ao = k;
	this.Vh = {};
	this.an = m;
	this.ux = V(this.T, "shortcut", this.qx, m, this)
}
R(hy, uj);
hy[G].i = function () {
	Oj(this.ux);
	this.T.s()
};
hy[G].qx = function (a) {
	13 != a.identifier && a[Zb]();
	var b;
	if (b = !this.an) {
		var c;
		try {
			var d = a[K],
				e = d[je];
			if ("INPUT" == e && "text" == d[E] || ("password" == d[E] || "checkbox" == d[E]) || "TEXTAREA" == e) c = j;
			else {
				var g = Uh(d);
				c = "A" == e && Kh(g, "offscreen")
			}
		} catch (h) {
			c = m
		}
		b = !c
	}
	if (b) {
		b = Uh(a[K]);
		if (Kh(b, "goog-button") || Kh(b, "goog-button-body")) {
			if (13 == a.identifier) return;
			a[K][Ub]()
		}
		a = a.identifier;
		if (!this.ao || this.ao(a)) a in this.Vh && (this.Vh[a](), mr("keyboard-shortcut", a, 0.01)), this.Ol && this.Ol()
	}
};

function iy(a, b) {
	a.ao = b
}
hy[G].Dp = function (a, b, c) {
	var d = a[N]("-");
	c && (b = P(b, c));
	this.Vh[d] = b;
	this.T.zz[he](this.T, [d][Sb](a))
};
hy[G].nv = function (a, b) {
	var c = b[N]("-");
	c in this.Vh && this.Dp(a, this.Vh[c])
};
var yr = k;

function jy(a, b, c) {
	cb(this, a);
	this.handle = b || a;
	this.mk = c || new Zk(fa, fa, fa, fa);
	this.V = ok(a);
	this.J = new Jl(this);
	V(this.handle, ["touchstart", "mousedown"], this.Pi, m, this)
}
R(jy, Fl);
var ky = U || Ri && ej("1.9.3");
O = jy[G];
Pa(O, 0);
Qa(O, 0);
Da(O, 0);
Ea(O, 0);
O.nu = 0;
O.ou = 0;
O.og = 0;
O.pg = 0;
O.eb = j;
O.hf = m;
O.sr = 0;
O.ry = 0;
O.Dx = m;
O.Yi = m;
O.getHandler = function () {
	return this.J
};
O.Zt = function (a) {
	this.Sk = a
};
O.Ca = function (a) {
	this.eb = a
};
O.i = function () {
	jy.a.i[L](this);
	Mj(this.handle, ["touchstart", "mousedown"], this.Pi, m, this);
	this.J.Qd();
	ky && this.V.releaseCapture();
	cb(this, k);
	this.J = this.handle = k
};

function ly(a) {
	Lg(a.Jc) || (a.Jc = ll(a[K]));
	return a.Jc
}
O.Pi = function (a) {
	var b = "mousedown" == a[E];
	if (this.eb && !this.hf && (!b || Cj(a))) {
		my(this, a);
		if (0 == this.sr)
			if (this[A](new ny("start", this, a[Uc], a[Vc], a))) this.hf = j, a[Zb]();
			else return;
			else a[Zb]();
		var b = this.V,
			c = b[Wc],
			d = !ky;
		this.J.j(b, ["touchmove", "mousemove"], this.kx, d);
		this.J.j(b, ["touchend", "mouseup"], this.mf, d);
		ky ? (c.setCapture(m), this.J.j(c, "losecapture", this.mf)) : this.J.j(xk(b), "blur", this.mf);
		U && this.Dx && this.J.j(b, "dragstart", yj);
		this.Sk && this.J.j(this.Sk, "scroll", this.ft, d);
		Pa(this, this.nu = a[Uc]);
		Qa(this, this.ou = a[Vc]);
		Da(this, a[ic]);
		Ea(this, a[jc]);
		this.Yi ? (a = this[K], b = a[Cd], c = a[ud], !c && "fixed" == dl(a) && (c = ok(a)[Wc]), c ? (Ri ? (d = nl(c), b += d[B]) : gj(8) && (d = nl(c), b -= d[B]), a = ll(c) ? c[nd] - (b + a[Rb]) : b) : a = b) : a = this[K][Cd];
		this.og = a;
		this.pg = this[K][ue];
		this.Le = Xk(mk(this.V));
		this.ry = ah()
	} else this[A]("earlycancel")
};
O.mf = function (a, b) {
	this.J.Qd();
	ky && this.V.releaseCapture();
	if (this.hf) {
		my(this, a);
		this.hf = m;
		var c = oy(this, this.og),
			d = py(this, this.pg);
		this[A](new ny("end", this, a[Uc], a[Vc], a, c, d, b || "touchcancel" == a[E]))
	} else this[A]("earlycancel");
	("touchend" == a[E] || "touchcancel" == a[E]) && a[Zb]()
};

function my(a, b) {
	var c = b[E];
	"touchstart" == c || "touchmove" == c ? b.ta(b.oe()[bc][0], b[gc]) : ("touchend" == c || "touchcancel" == c) && b.ta(b.oe().changedTouches[0], b[gc])
}
O.kx = function (a) {
	if (this.eb) {
		my(this, a);
		var b = (this.Yi && ly(this) ? -1 : 1) * (a[Uc] - this[Uc]),
			c = a[Vc] - this[Vc];
		Pa(this, a[Uc]);
		Qa(this, a[Vc]);
		Da(this, a[ic]);
		Ea(this, a[jc]);
		if (!this.hf) {
			var d = this.nu - this[Uc],
				e = this.ou - this[Vc];
			if (d * d + e * e > this.sr)
				if (this[A](new ny("start", this, a[Uc], a[Vc], a))) this.hf = j;
				else {
					this.he || this.mf(a);
					return
				}
		}
		c = qy(this, b, c);
		b = c.x;
		c = c.y;
		this.hf && this[A](new ny("beforedrag", this, a[Uc], a[Vc], a, b, c)) && (ry(this, b, c), this[A](new ny("drag", this, a[Uc], a[Vc], a, b, c)), a[Zb]())
	}
};

function qy(a, b, c) {
	var d = Xk(mk(a.V));
	b += d.x - a.Le.x;
	c += d.y - a.Le.y;
	a.Le = d;
	a.og += b;
	a.pg += c;
	b = oy(a, a.og);
	a = py(a, a.pg);
	return new ek(b, a)
}
O.ft = function (a) {
	var b = qy(this, 0, 0);
	Pa(a, this[Uc]);
	Qa(a, this[Vc]);
	var c = b.x,
		b = b.y;
	ry(this, c, b);
	this[A](new ny("drag", this, a[Uc], a[Vc], a, c, b))
};

function oy(a, b) {
	var c = a.mk,
		d = !ta(c[B]) ? c[B] : k,
		c = !ta(c[x]) ? c[x] : 0;
	return s.min(d != k ? d + c : la, s.max(d != k ? d : -la, b))
}

function py(a, b) {
	var c = a.mk,
		d = !ta(c.top) ? c.top : k,
		c = !ta(c[M]) ? c[M] : 0;
	return s.min(d != k ? d + c : la, s.max(d != k ? d : -la, b))
}

function ry(a, b, c) {
	a.Yi && ly(a) ? qb(a[K][I], b + "px") : Ca(a[K][I], b + "px");
	a[K][I].top = c + "px"
}

function ny(a, b, c, d, e, g, h, l) {
	xj[L](this, a);
	Pa(this, c);
	Qa(this, d);
	this.Jv = e;
	Ca(this, Lg(g) ? g : b.og);
	this.top = Lg(h) ? h : b.pg;
	this.UB = b;
	this.kw = !! l
}
R(ny, xj);

function sy(a) {
	this.e = a;
	a = U ? "focusout" : "blur";
	this.cy = V(this.e, U ? "focusin" : "focus", this, !U);
	this.dy = V(this.e, a, this, !U)
}
R(sy, Fl);
Ka(sy[G], function (a) {
	var b = new zj(a.oe());
	La(b, "focusin" == a[E] || "focus" == a[E] ? "focusin" : "focusout");
	this[A](b)
});
sy[G].i = function () {
	sy.a.i[L](this);
	Oj(this.cy);
	Oj(this.dy);
	delete this.e
};

function ty(a, b) {
	Ol[L](this, b);
	this.oB = !! a
}
R(ty, Ol);
O = ty[G];
O.rm = k;
O.ka = m;
O.Sb = k;
O.nb = k;
O.kd = k;
O.w = function () {
	return "goog-modalpopup"
};
O.Pj = function () {
	return this.Sb
};
O.k = function () {
	ty.a.k[L](this);
	var a = this.b();
	S(a, this.w());
	Qk(a, j);
	xl(a, m);
	uy(this);
	vy(this)
};

function uy(a) {
	if (a.oB && !a.nb) {
		var b;
		b = a.v().k("iframe", {
			frameborder: 0,
			style: "border:0;vertical-align:bottom;",
			src: 'javascript:""'
		});
		a.nb = b;
		Ya(a.nb, a.w() + "-bg");
		xl(a.nb, m);
		wl(a.nb, 0)
	}
	a.Sb || (a.Sb = a.v().k("div", a.w() + "-bg"), xl(a.Sb, m))
}

function vy(a) {
	a.kd || (a.kd = a.v()[rc]("span"), xl(a.kd, m), Qk(a.kd, j), Xa(a.kd[I], "absolute"))
}
O.Tb = function (a) {
	return !!a && "DIV" == a[je]
};
O.xb = function (a) {
	ty.a.xb[L](this, a);
	S(this.b(), this.w());
	uy(this);
	vy(this);
	xl(this.b(), m)
};
O.Z = function () {
	this.nb && Fk(this.nb, this.b());
	Fk(this.Sb, this.b());
	ty.a.Z[L](this);
	Gk(this.kd, this.b());
	this.rm = new sy(Vk(this.v()));
	this[fd]().j(this.rm, "focusin", this.Ky)
};
O.Oa = function () {
	this.F() && this.D(m);
	wj(this.rm);
	ty.a.Oa[L](this);
	Hk(this.nb);
	Hk(this.Sb);
	Hk(this.kd)
};
O.D = function (a) {
	a != this.ka && (this.bh && this.bh[ad](), this.xh && this.xh[ad](), this.ah && this.ah[ad](), this.wh && this.wh[ad](), a ? this.Oi() : this.Xc())
};
O.Oi = function () {
	this[A]("beforeshow") && (this.jo(), this.Ja(), this[fd]().j(Wk(this.v()), "resize", this.jo), wy(this, j), this[qc](), this.ka = j, this.bh && this.xh ? (Lj(this.bh, "end", this.wk, m, this), this.xh[Bc](), this.bh[Bc]()) : this.wk())
};
O.Xc = function () {
	this[A]("beforehide") && (this[fd]().pa(Wk(this.v()), "resize", this.jo), this.ka = m, this.ah && this.wh ? (Lj(this.ah, "end", this.vk, m, this), this.wh[Bc](), this.ah[Bc]()) : this.vk())
};

function wy(a, b) {
	a.nb && xl(a.nb, b);
	a.Sb && xl(a.Sb, b);
	xl(a.b(), b);
	xl(a.kd, b)
}
O.wk = function () {
	this[A]("show")
};
O.vk = function () {
	wy(this, m);
	this[A]("hide")
};
O.F = function () {
	return this.ka
};
O.focus = function () {
	this.Pq()
};
O.jo = function () {
	this.nb && xl(this.nb, m);
	this.Sb && xl(this.Sb, m);
	var a = Vk(this.v()),
		b = wk(xk(a) || n),
		c = s.max(b[x], s.max(a[J][Od], a[Wc][Od])),
		a = s.max(b[M], s.max(a[J][sc], a[Wc][sc]));
	this.nb && (xl(this.nb, j), rl(this.nb, c, a));
	this.Sb && (xl(this.Sb, j), rl(this.Sb, c, a))
};
O.Ja = function () {
	var a = Vk(this.v()),
		b = xk(a) || n;
	if ("fixed" == dl(this.b())) var c = a = 0;
	else c = Xk(this.v()), a = c.x, c = c.y;
	var d = tl(this.b()),
		b = wk(b),
		a = s.max(a + b[x] / 2 - d[x] / 2, 0),
		c = s.max(c + b[M] / 2 - d[M] / 2, 0);
	el(this.b(), a, c);
	el(this.kd, a, c)
};
O.Ky = function (a) {
	a[K] == this.kd && Il(this.Pq, 0, this)
};
O.Pq = function () {
	try {
		U && Vk(this.v())[J][qc](), this.b()[qc]()
	} catch (a) {}
};
O.i = function () {
	wj(this.bh);
	this.bh = k;
	wj(this.ah);
	this.ah = k;
	wj(this.xh);
	this.xh = k;
	wj(this.wh);
	this.wh = k;
	ty.a.i[L](this)
};

function xy(a, b, c) {
	ty[L](this, b, c);
	this.ob = a || "modal-dialog";
	this.Xa = yy(yy(new zy, Ay, j), By, m, j)
}
R(xy, ty);
O = xy[G];
O.Aw = j;
O.Pm = j;
O.Jn = j;
O.am = j;
O.mj = 0.5;
O.h = "";
O.pb = "";
O.Za = k;
O.Cj = m;
O.mb = k;
O.od = k;
O.bl = k;
O.Yd = k;
O.ec = k;
O.Wa = k;
O.Ai = "dialog";
O.w = function () {
	return this.ob
};

function Cy(a, b) {
	a.h = b;
	a.od && Lk(a.od, b)
}
O.Vc = function () {
	return this.h
};
O.La = function (a) {
	this.pb = a;
	this.ec && u(this.ec, a)
};
O.yc = function () {
	return this.pb
};
O.Rh = function () {
	return this.Ai
};
O.Ho = function (a) {
	this.Ai = a
};
O.O = function () {
	this.b() || this.oa();
	return this.ec
};

function Dy(a) {
	a.b() || a.oa();
	return a.b()
}
O.Pj = function () {
	this.b() || this.oa();
	return xy.a.Pj[L](this)
};

function Ey(a, b) {
	a.mj = b;
	if (a.b()) {
		var c = a.Pj();
		c && wl(c, a.mj)
	}
}

function Fy(a, b) {
	b != a.Jn && Gy(a, b)
}

function Gy(a, b) {
	a.Jn = b;
	if (a.P) {
		var c = a.v(),
			d = a.Pj(),
			e = a.nb;
		b ? (e && c.Jr(e, a.b()), c.Jr(d, a.b())) : (c.removeNode(e), c.removeNode(d))
	}
}

function Hy(a, b) {
	a.b() && $h(a.mb, a.ob + "-title-draggable", b);
	b && !a.Za ? (a.Za = new jy(a.b(), a.mb), S(a.mb, a.ob + "-title-draggable"), V(a.Za, "start", a.Vz, m, a)) : !b && a.Za && (a.Za.s(), a.Za = k)
}
O.k = function () {
	xy.a.k[L](this);
	var a = this.b(),
		b = this.v();
	this.mb = b.k("div", {
		className: this.ob + "-title",
		id: this[Id]()
	}, this.od = b.k("span", this.ob + "-title-text", this.h), this.Yd = b.k("span", this.ob + "-title-close"));
	Dk(a, this.mb, this.ec = b.k("div", this.ob + "-content"), this.Wa = b.k("div", this.ob + "-buttons"));
	this.bl = this.mb.id;
	jm(a, this.Rh());
	km(a, "labelledby", this.bl || "");
	this.pb && u(this.ec, this.pb);
	xl(this.Yd, this.Pm);
	this.Xa && (a = this.Xa, a.e = this.Wa, a.oa());
	xl(this.Wa, !! this.Xa);
	Ey(this, this.mj)
};
O.xb = function (a) {
	xy.a.xb[L](this, a);
	a = this.ob + "-content";
	(this.ec = rk(k, a, this.b())[0]) ? this.pb = this.ec[Qb] : (this.ec = this.v().k("div", a), this.pb && u(this.ec, this.pb), this.b()[v](this.ec));
	a = this.ob + "-title";
	var b = this.ob + "-title-text",
		c = this.ob + "-title-close";
	(this.mb = rk(k, a, this.b())[0]) ? (this.od = rk(k, b, this.mb)[0], this.Yd = rk(k, c, this.mb)[0], this.mb.id || (this.mb.id = this[Id]())) : (this.mb = this.v().k("div", {
			className: a,
			id: this[Id]()
		}), this.b()[$b](this.mb, this.ec));
	this.bl = this.mb.id;
	this.od ? this.h = Rk(this.od) :
		(this.od = this.v().k("span", b, this.h), this.mb[v](this.od));
	km(this.b(), "labelledby", this.bl || "");
	this.Yd || (this.Yd = this.v().k("span", c), this.mb[v](this.Yd));
	xl(this.Yd, this.Pm);
	a = this.ob + "-buttons";
	(this.Wa = rk(k, a, this.b())[0]) ? (this.Xa = new zy(this.v()), this.Xa.I(this.Wa)) : (this.Wa = this.v().k("div", a), this.b()[v](this.Wa), this.Xa && (a = this.Xa, a.e = this.Wa, a.oa()), xl(this.Wa, !! this.Xa));
	Ey(this, this.mj)
};
O.Z = function () {
	xy.a.Z[L](this);
	this[fd]().j(this.b(), "keydown", this.ui).j(this.b(), "keypress", this.ui);
	this[fd]().j(this.Wa, "click", this.Ey);
	Hy(this, this.am);
	this[fd]().j(this.Yd, "click", this.az);
	jm(this.b(), this.Rh());
	"" !== this.od.id && km(this.b(), "labelledby", this.od.id);
	this.Jn || Gy(this, m)
};
O.Oa = function () {
	this.F() && this.D(m);
	Hy(this, m);
	xy.a.Oa[L](this)
};
O.D = function (a) {
	a != this.F() && (this.P || this.oa(), xy.a.D[L](this, a))
};
O.wk = function () {
	xy.a.wk[L](this);
	this[A]("aftershow")
};
O.vk = function () {
	xy.a.vk[L](this);
	this[A]("afterhide");
	this.Cj && this.s()
};
O.focus = function () {
	xy.a[qc][L](this);
	if (this.Xa) {
		var a = this.Xa.xj;
		if (a)
			for (var b = Vk(this.v()), c = this.Wa[Tc]("button"), d = 0, e; e = c[d]; d++)
				if (e[Lc] == a) {
					try {
						if (Si || Qi) {
							var g = b[rc]("input");
							Ga(g[I], "position:fixed;width:0;height:0;left:0;top:0;");
							this.b()[v](g);
							g[qc]();
							this.b()[Hd](g)
						}
						e[qc]()
					} catch (h) {}
					break
				}
	}
};
O.Vz = function () {
	var a = Vk(this.v()),
		b = wk(xk(a) || n),
		c = s.max(a[J][Od], b[x]),
		a = s.max(a[J][sc], b[M]),
		d = tl(this.b());
	"fixed" == dl(this.b()) ? (b = new Zk(0, 0, s.max(0, b[x] - d[x]), s.max(0, b[M] - d[M])), this.Za.mk = b || new Zk(fa, fa, fa, fa)) : this.Za.mk = new Zk(0, 0, c - d[x], a - d[M]) || new Zk(fa, fa, fa, fa)
};
O.az = function () {
	if (this.Pm) {
		var a = this.Xa,
			b = a && a.Kl;
		b ? (a = a.ma(b), this[A](new Iy(b, a)) && this.D(m)) : this.D(m)
	}
};
O.i = function () {
	this.Wa = this.Yd = k;
	xy.a.i[L](this)
};

function Jy(a, b) {
	a.Xa = b;
	if (a.Wa) {
		if (a.Xa) {
			var c = a.Xa;
			c.e = a.Wa;
			c.oa()
		} else u(a.Wa, "");
		xl(a.Wa, !! a.Xa)
	}
}
O.Ey = function (a) {
	a: {
		for (a = a[K]; a != k && a != this.Wa;) {
			if ("BUTTON" == a[je]) break a;
			a = a[oe]
		}
		a = k
	}
	if (a && !a[Bd]) {
		a = a[Lc];
		var b = this.Xa.ma(a);
		this[A](new Iy(a, b)) && this.D(m)
	}
};
O.ui = function (a) {
	var b = m,
		c = m,
		d = this.Xa,
		e = a[K];
	if ("keydown" == a[E])
		if (this.Aw && 27 == a[D]) {
			var g = d && d.Kl,
				e = "SELECT" == e[je] && !e[Bd];
			g && !e ? (c = j, b = d.ma(g), b = this[A](new Iy(g, b))) : e || (b = j)
		} else 9 == a[D] && (a[ie] && e == this.b()) && (c = j);
		else if (13 == a[D]) {
		if ("BUTTON" == e[je]) g = e[Lc];
		else if (d) {
			var h = d.xj,
				l = h && Ky(d, h),
				e = ("TEXTAREA" == e[je] || "SELECT" == e[je]) && !e[Bd];
			l && (!l[Bd] && !e) && (g = h)
		}
		g && d && (c = j, b = this[A](new Iy(g, qa(d.ma(g)))))
	}
	if (b || c) a[wd](), a[Zb]();
	b && this.D(m)
};

function Iy(a, b) {
	La(this, "dialogselect");
	this.key = a;
	this.caption = b
}
R(Iy, xj);

function zy(a) {
	this.Y = a || mk();
	zi[L](this)
}
var Ly, My;
R(zy, zi);
O = zy[G];
O.ob = "goog-buttonset";
O.xj = k;
O.e = k;
O.Kl = k;
O.set = function (a, b, c, d) {
	zi[G].set[L](this, a, b);
	c && (this.xj = a);
	d && (this.Kl = a);
	return this
};

function yy(a, b, c, d) {
	return a.set(b.key, b.caption, c, d)
}
O.oa = function () {
	if (this.e) {
		u(this.e, "");
		var a = mk(this.e);
		xi(this, function (b, c) {
			var d = a.k("button", {
				name: c
			}, b);
			c == this.xj && Ya(d, this.ob + "-default");
			this.e[v](d)
		}, this)
	}
};
O.I = function (a) {
	if (a && 1 == a[Ib]) {
		this.e = a;
		a = this.e[Tc]("button");
		for (var b = 0, c, d, e; c = a[b]; b++)
			if (d = c[Lc] || c.id, e = Rk(c) || c[Yb], d) {
				var g = 0 == b;
				this.set(d, e, g, "cancel" == c[Lc]);
				g && S(c, this.ob + "-default")
			}
	}
};
O.b = function () {
	return this.e
};
O.v = function () {
	return this.Y
};

function Ky(a, b) {
	for (var c = a.e[Tc]("BUTTON"), d = 0, e; e = c[d]; d++)
		if (e[Lc] == b || e.id == b) return e;
	return k
}
var Ay = {
	key: "ok",
	caption: "OK"
}, By = {
		key: "cancel",
		caption: "Cancel"
	}, Ny = {
		key: "yes",
		caption: "Yes"
	}, Oy = {
		key: "no",
		caption: "No"
	}, Py = {
		key: "save",
		caption: "Save"
	}, Qy = {
		key: "continue",
		caption: "Continue"
	};
"undefined" != typeof q && (Ly = yy(new zy, Ay, j, j), My = yy(yy(new zy, Ay, j), By, m, j), yy(yy(new zy, Ny, j), Oy, m, j), yy(yy(yy(new zy, Ny), Oy, j), By, m, j), yy(yy(yy(new zy, Qy), Py), By, j, j));

function Ry(a, b, c) {
	if (b[xe]) {
		for (var d = vl(a), e = d.top, g = e + d[M], h = vl(b), l = h.top, r = l + h[M], t = 0; b && b != a; b = b[ud]) t += b[ue];
		if (1 == c) Sa(a, h[M] <= d[M] ? t - (d[M] - h[M]) / 2 : t);
		else if (e > l || r > g || c) Sa(a, 2 == c || !c && (e > l || h[M] > d[M]) ? t : t + h[M] - d[M])
	}
}

function Sy(a, b, c) {
	a = {
		id: a,
		content: b
	};
	a = sn('<div id="' + W(a.id) + '"><table class="info-bubble"><tbody><tr><td class="arrow" rowspan="3"></td><td class="itl i"></td><td class="it i"></td><td class="itr i"></td></tr><tr><td class="ileft i"><table class=\'ileft-table\' cellpadding=\'0\' cellspacing=\'0\'><tbody class=\'ileft-table-body\'><tr><td class="il i">&nbsp;</td></tr><tr><td class="empty i">&nbsp;</td></tr><tr><td class="il i">&nbsp;</td></tr></tbody></table></td><td class="ic i">' + a[Ob] + '</td><td class="ir i"></td></tr><tr><td class="ibl i"></td><td class="ib i"></td><td class="ibr i"></td></tr></tbody></table></div>');
	(c || q[J])[v](a);
	c = Y(a, "ileft", "td");
	b = Y(a, "ileft-table", "table");
	c[xe] && pb(b[I], c[xe] + "px");
	return a
}

function Ty(a, b, c) {
	var d = m;
	if (n.top != n) try {
		d = Lg(n.top[rd][rc])
	} catch (e) {}
	xy[L](this, (a || "") + " fr-modal-dialog", b, d ? new nk(n.top[rd]) : i);
	this.wx = c;
	this.Cj = j
}
R(Ty, xy);
Ty[G].D = function (a) {
	this.wx || S(Dy(this), "fr-dialog-with-close");
	Ty.a.D[L](this, a);
	Uy(!a)
};

function Uy(a) {
	$h(q[J], "hide-embeds", !a)
}

function Vy(a) {
	a = new Date(a / 1E3);
	var b = yn(a);
	return b ? zn("%1 (%2)", [xn(a, j), b]) : xn(a, m)
}

function ov(a, b) {
	$h(a, "goog-button-base-open", b)
}

function lt(a, b, c, d, e, g) {
	var h = new Ty("fr-confirm-dialog", m, j);
	Ey(h, 0.5);
	Fy(h, j);
	e ? Jy(h, (new zy).set("ok", e, g ? m : j).set("cancel", "Cancel", g ? j : m, j)) : Jy(h, My);
	h.La(d ? a : ph(a));
	V(h, "dialogselect", function (l) {
		"ok" == l.key ? b() : c && c()
	});
	h.D(j)
}

function Wy(a, b) {
	var c = new Ty("fr-message-dialog", m, j);
	Ey(c, 0.5);
	Fy(c, j);
	Jy(c, Ly);
	c.La(ph(a));
	b && Lj(c, "dialogselect", b);
	c.D(j)
}

function Xy(a, b, c, d, e) {
	this.Q = a;
	this.Qm = b;
	this.hq = c;
	this.DA = b[F];
	for (a = 0; b = this.Qm[a]; a++) V(b, "click", P(this.St, this, a));
	this.ht = e;
	Lg(d) && this.St(d)
}
bb(Xy[G], function () {
	return this.Q
});
Xy[G].St = function (a) {
	this.ht && this.ht(a);
	for (var b = 0; b < this.Qm[F]; b++) {
		var c = this.hq[b];
		$h(this.Qm[b], "tab-header-selected", b == a);
		$h(c, "hidden", b != a)
	}
};

function Yy(a, b, c) {
	a = a.hq[b];
	b = Y(a, "chart-data", "input");
	var d = c || hq(b[Yb]);
	if (d) {
		var e = a[Tc]("map")[0];
		Ek(e);
		e.previousSibling && Hk(e.previousSibling);
		c = Ck("img", {
			src: d.chartUrl,
			alt: "",
			usemap: "#" + e.id,
			width: d.chartWidth,
			height: d.chartHeight
		});
		Fk(c, e);
		var g = new Zq;
		hr(g, function () {
			for (var h = hq(g[Eb]), l = 0, r; r = h.chartshape[l]; l++)
				if (r[Lc] in d.chartValues) {
					var t = d.chartValues[r[Lc]];
					r = Ck("area", {
						shape: "rect",
						alt: t,
						title: t,
						coords: r[Sd]
					});
					e[v](r)
				}
		});
		g.ma(d.chartJsonUrl)
	}
}

function Zy(a, b, c) {
	a = tk("div", "tab-group", a);
	for (var d = [], e = 0, g; g = a[e]; e++) {
		var h = tk("div", "tab-header", g),
			l = tk("div", "tab-contents", g);
		d[w](new Xy(g.id, h, l, b, c))
	}
	return d
}

function $y(a) {
	var b;
	a: {
		var c = 0,
			d = 0;
		if (az(a)) c = a.selectionStart, d = -1;
		else if (U) {
			var e = bz(a);
			b = e[0];
			e = e[1];
			if (b.inRange(e)) {
				b.setEndPoint("EndToStart", e);
				if ("textarea" == a[E]) {
					e.duplicate();
					c = a = b[Eb];
					for (d = m; !d;) 0 == b.compareEndPoints("StartToEnd", b) ? d = j : (b.moveEnd("character", -1), b[Eb] == a ? c += "\r\n" : d = j);
					b = [c[F], -1];
					break a
				}
				c = b[Eb][F];
				d = -1
			}
		}
		b = [c, d]
	}
	return b[0]
}

function cz(a, b) {
	if (az(a)) a.selectionStart = b, a.selectionEnd = b;
	else if (U) {
		b = dz(a, b);
		var c = a.createTextRange();
		c[Fb](j);
		c.move("character", b);
		c[vc]()
	}
}

function bz(a) {
	var b = a[Gd] || a[rd],
		c = b.selection.createRange();
	"textarea" == a[E] ? (b = b[J].createTextRange(), b.moveToElementText(a)) : b = a.createTextRange();
	return [b, c]
}

function dz(a, b) {
	"textarea" == a[E] && (b = a[Yb][be](0, b)[z](/(\r\n|\r|\n)/g, "\n")[F]);
	return b
}

function az(a) {
	try {
		return "number" == typeof a.selectionStart
	} catch (b) {
		return m
	}
}

function ez(a, b) {
	this.Ka = a;
	this.pB = !b
}

function fz(a, b, c) {
	var d = [];
	if ("" != b) {
		b = Bh(b);
		var e = va("(^|\\W+)" + b, "i");
		fi(a.Ka, function (g) {
			qa(g)[kc](e) && d[w](g);
			return d[F] >= c
		})
	}
	return d
}

function gz(a, b, c) {
	var d = [];
	ei(a.Ka, function (g, h) {
		var l = b[Be](),
			r = qa(g)[Be](),
			t = 0;
		if (-1 != r[cc](l)) t = oa((r[cc](l) / 4)[bd](), 10);
		else
			for (var y = l[td](""), H = -1, Ha = 10, ga = 0, hb; hb = y[ga]; ga++) hb = r[cc](hb), hb > H ? (H = hb - H - 1, H > Ha - 5 && (H = Ha - 5), t += H, H = hb) : (t += Ha, Ha += 5);
		t < 6 * l[F] && d[w]({
			pA: g,
			Ot: t,
			index: h
		})
	});
	d.sort(function (g, h) {
		var l = g.Ot - h.Ot;
		return 0 != l ? l : g[md] - h[md]
	});
	a = [];
	for (var e = 0; e < c && e < d[F]; e++) a[w](d[e].pA);
	return a
}

function hz(a, b, c) {
	this.As = a;
	this.Sd = c;
	this.C = b;
	V(b, ["hilite", "select", "canceldismiss", "dismiss"], this);
	this.qc = k;
	this.Ka = [];
	this.Ab = -1;
	this.rb = 0;
	this.Wb = this.U = k;
	this.Hr = {}
}
R(hz, Fl);
O = hz[G];
O.ly = 10;
O.Hv = j;
O.Fp = m;
O.Xu = m;
O.Iu = m;
O.Bc = function () {
	return this.C
};
Ka(O, function (a) {
	if (a[K] == this.C) switch (a[E]) {
	case "hilite":
		this.Fc(a.Nk);
		break;
	case "select":
		iz(this);
		break;
	case "canceldismiss":
		jz(this);
		break;
	case "dismiss":
		kz(this)
	}
});
O.Lo = function (a) {
	if (this.qc != a) {
		this.qc = a;
		a = this.As;
		var b = this.qc,
			c = this.ly,
			d = P(this.jy, this),
			e = fz(a, b, c);
		0 == e[F] && a.pB && (e = gz(a, b, c));
		d(b, e);
		jz(this)
	}
};
O.Ko = function (a) {
	this.U = a
};
O.Bb = function () {
	return this.C.F()
};

function lz(a) {
	var b = a.rb + a.Ka[F] - 1;
	if (a.Ab >= a.rb && a.Ab < b) return a.Fc(a.Ab + 1), j;
	if (-1 == a.Ab) return a.Fc(a.rb), j;
	if (a.Ab == b)
		if (a.Fp) a.Fc(-1);
		else if (a.Xu) return a.Fc(a.rb), j;
	return m
}

function mz(a) {
	if (a.Ab > a.rb) return a.Fc(a.Ab - 1), j;
	if (a.Fp && a.Ab == a.rb) a.Fc(-1);
	else if (a.Xu && (-1 == a.Ab || a.Ab == a.rb)) return a.Fc(a.rb + a.Ka[F] - 1), j;
	return m
}
O.Fc = function (a) {
	this.Ab = a;
	this.C.Fc(a);
	return -1 != nz(this, a)
};

function iz(a) {
	var b = nz(a, a.Ab);
	if (-1 != b) {
		var b = a.Ka[b],
			c = a.Sd,
			d = b[bd]();
		if (Lg(i) ? 0 : c.Vg) {
			var e = oz(c, c.S(), $y(c.ra)),
				g = pz(c, c.S());
			c.Uz[yb](d) || (d = d[z](/[\s\xa0]+$/, "") + c.aw);
			c.uB && (0 != e && !ih(g[e - 1]) && (d = " " + d), e == g[F] - 1 && (d += " "));
			if (d != g[e]) {
				g[e] = d;
				d = c.ra;
				(Ri || U && ej("9")) && d[Ub]();
				za(d, g[N](""));
				for (var h = 0, l = 0; l <= e; l++) h += g[l][F];
				d[qc]();
				e = h;
				g = c.ra;
				d = e;
				az(g) ? g.selectionStart = d : U && (h = bz(g), l = h[0], l.inRange(h[1]) && (d = dz(g, d), l[Fb](j), l.move("character", d), l[vc]()));
				g = c.ra;
				az(g) ? g.selectionEnd = e :
					U && (h = bz(g), d = h[1], h[0].inRange(d) && (e = dz(g, e), g = dz(g, $y(g)), d[Fb](j), d.moveEnd("character", e - g), d[vc]()))
			}
		} else c.Ta(d);
		c.mo = j;
		a.Iu ? (a.qc = k, kz(a)) : a.yd();
		a[A]({
			type: "update",
			Nk: b
		});
		a.Iu && a.Sd[pe](j);
		return j
	}
	a.yd();
	a[A]({
		type: "update",
		Nk: k
	});
	return m
}
O.yd = function () {
	this.Ab = -1;
	this.qc = k;
	this.rb += this.Ka[F];
	this.Ka = [];
	n[Db](this.Wb);
	this.Wb = k;
	this.C.yd();
	this[A]("suggestionsupdate");
	this[A]("dismiss")
};

function kz(a) {
	a.Wb || (a.Wb = n[qd](P(a.yd, a), 100))
}
O.xr = function () {
	return this.Wb ? (n[Db](this.Wb), this.Wb = k, j) : m
};

function jz(a) {
	a.xr() || n[qd](P(a.xr, a), 10)
}
O.i = function () {
	hz.a.i[L](this);
	delete this.Hr;
	this.C.s();
	this.Sd.s();
	this.As = k
};
O.jy = function (a, b, c) {
	this.qc == a && this.ho(b, c)
};
O.ho = function (a, b) {
	var c = "object" == Pg(b) && b,
		d = (c ? c.$B() : b) ? nz(this, this.Ab) : -1;
	this.rb += this.Ka[F];
	this.Ka = a;
	for (var e = [], g = 0; g < a[F]; ++g) e[w]({
		id: this.rb + g,
		data: a[g]
	});
	g = k;
	this.U && (g = this.Hr[Wg(this.U)] || this.U);
	this.C.yv = g;
	this.C.ho(e, this.qc, this.U);
	g = this.Hv;
	c && c.Tw() !== i && (g = c.Tw());
	(g || 0 <= d) && 0 != e[F] && this.qc ? this.Fc(0 <= d ? this.rb + d : this.rb) : this.Ab = -1;
	this[A]("suggestionsupdate")
};

function nz(a, b) {
	var c = b - a.rb;
	return 0 > c || c >= a.Ka[F] ? -1 : c
}
O.Bl = function (a) {
	var b = this.Sd;
	b.Bl[he](b, arguments)
};
O.update = function (a) {
	this.Sd[pe](a)
};

function qz(a, b, c, d) {
	d = d || 150;
	this.Vg = c != k ? c : j;
	this.Gi = a != k ? a : ",;";
	this.aw = this.Gi[be](0, 1);
	a = this.Vg ? "[\\s" + this.Gi + "]+" : "[\\s]+";
	this.Ju = va("^" + a + "|" + a + "$", "g");
	this.Uz = va("\\s*[" + this.Gi + "]$");
	this.ps = b || "";
	this.pz = this.Vg;
	this.R = 0 < d ? new Gl(d) : k;
	this.db = new Jl(this);
	this.wl = new Jl(this);
	this.ga = new sm;
	this.ks = -1
}
R(qz, uj);
var rz = (Ds || Es) && !ej("533.17.9");
O = qz[G];
O.uB = j;
O.Sw = j;
O.Pu = m;
O.Vt = j;
O.Ut = j;
O.xl = k;
O.ra = k;
O.zn = "";
O.Ye = m;
O.mo = m;
O.fB = j;
O.S = function () {
	return this.ra[Yb]
};
O.Ta = function (a) {
	za(this.ra, a)
};
O.Bl = function (a) {
	for (var b = 0; b < arguments[F]; b++) {
		var c = arguments[b];
		Vg(c) && 1 == c[Ib] && km(c, "haspopup", j);
		this.db.j(c, "focus", this.Wc);
		this.db.j(c, "blur", this.Cc);
		this.ra || (this.wl.j(c, "keydown", this.Py), Vg(c) && 1 == c[Ib] && Uk(ok(c)) == c && sz(this, c))
	}
};
O.i = function () {
	qz.a.i[L](this);
	this.xl != k && n[Db](this.xl);
	this.db.s();
	delete this.db;
	this.wl.s();
	this.ga.s()
};

function tz(a, b) {
	a.Vt = b;
	a.Ut = b
}
O.Jb = function (a) {
	switch (a[D]) {
	case 40:
		if (this.qa.Bb()) return this.Pu ? mz(this.qa) : lz(this.qa), a[Zb](), j;
		if (!this.Vg) return this[pe](j), a[Zb](), j;
		break;
	case 38:
		if (this.qa.Bb()) return this.Pu ? lz(this.qa) : mz(this.qa), a[Zb](), j;
		break;
	case 9:
		if (this.qa.Bb() && !a[ie]) {
			if (this[pe](), iz(this.qa) && this.pz) return a[Zb](), j
		} else this.qa.yd();
		break;
	case 13:
		if (this.qa.Bb()) {
			if (this[pe](), iz(this.qa)) return a[Zb](), a[wd](), j
		} else this.qa.yd();
		break;
	case 27:
		if (this.qa.Bb()) return this.qa.yd(), a[Zb](), a[wd](), j;
		break;
	case 229:
		if (!this.Ye) return this.Ye || (this.db.j(this.ra, "keyup", this.at), this.db.j(this.ra, "keypress", this.$s), this.Ye = j), j;
		break;
	default:
		this.R && !this.fB && (this.R[ad](), this.R[Qd]())
	}
	return uz(this, a)
};

function uz(a, b) {
	var c = a.Vg && b[oc] && -1 != a.Gi[cc](qa.fromCharCode(b[oc]));
	a.Vt && c && a[pe]();
	return a.Ut && c && iz(a.qa) ? (b[Zb](), j) : m
}
O.hx = function () {
	return m
};
O.Wc = function (a) {
	sz(this, a[K] || k)
};

function sz(a, b) {
	a.wl.Qd();
	a.qa && jz(a.qa);
	b != a.ra && (a.ra = b, a.R && (a.R[Qd](), a.db.j(a.R, "tick", a.Xg)), a.zn = a.S(), a.ga.td(a.ra), a.db.j(a.ga, "key", a.ui), a.db.j(a.ra, "mousedown", a.bt), U && a.db.j(a.ra, "keypress", a.Xs))
}
O.Cc = function () {
	rz ? this.xl = n[qd](P(this.xt, this), 0) : this.xt()
};
O.xt = function () {
	this.ra && (this.db.pa(this.ga, "key", this.ui), this.ga[Dc](), this.db.pa(this.ra, "keyup", this.hx), this.db.pa(this.ra, "mousedown", this.bt), U && this.db.pa(this.ra, "keypress", this.Xs), this.Ye && vz(this), this.ra = k, this.R && (this.R[ad](), this.db.pa(this.R, "tick", this.Xg)), this.qa && kz(this.qa))
};
O.Xg = function () {
	this[pe]()
};
O.Py = function (a) {
	this.Wc(a)
};
O.ui = function (a) {
	this.ks = a[D];
	this.qa && this.Jb(a)
};
O.$s = function () {
	this.Ye && 229 != this.ks && vz(this)
};
O.at = function (a) {
	this.Ye && (13 == a[D] || 77 == a[D] && a[sd]) && vz(this)
};
O.bt = function (a) {
	this.qa && this.Ec(a)
};
O.Ec = function () {};

function vz(a) {
	a.Ye && (a.Ye = m, a.db.pa(a.ra, "keypress", a.$s), a.db.pa(a.ra, "keyup", a.at))
}
O.Xs = function (a) {
	uz(this, a)
};
O.update = function (a) {
	if (this.ra && (a || this.S() != this.zn)) {
		if (a || !this.mo) {
			a = $y(this.ra);
			var b = this.S();
			a = pz(this, b)[oz(this, b, a)];
			a = this.Ju ? qa(a)[z](this.Ju, "") : a;
			this.qa && (this.qa.Ko(this.ra), this.qa.Lo(a, this.S()))
		}
		this.zn = this.S()
	}
	this.mo = m
};

function oz(a, b, c) {
	a = pz(a, b);
	if (c == b[F]) return a[F] - 1;
	for (var d = b = 0, e = 0; d < a[F] && e <= c; d++) e += a[d][F], b = d;
	return b
}

function pz(a, b) {
	if (!a.Vg) return [b];
	for (var c = qa(b)[td](""), d = [], e = [], g = 0, h = m; g < c[F]; g++)
		if (a.ps && -1 != a.ps[cc](c[g])) a.Sw && !h && (d[w](e[N]("")), Va(e, 0)), e[w](c[g]), h = !h;
		else if (!h && -1 != a.Gi[cc](c[g])) e[w](c[g]), d[w](e[N]("")), Va(e, 0);
	else e[w](c[g]);
	d[w](e[N](""));
	return d
}

function wz(a, b, c) {
	this.Cn = a;
	this.Ff = b || 0;
	this.T = c;
	this.mg = P(this.iw, this)
}
R(wz, uj);
O = wz[G];
O.Q = 0;
O.i = function () {
	wz.a.i[L](this);
	this[ad]();
	delete this.Cn;
	delete this.T
};
O.start = function (a) {
	this[ad]();
	this.Q = Il(this.mg, Lg(a) ? a : this.Ff)
};
O.stop = function () {
	this.Be() && Hl[Db](this.Q);
	this.Q = 0
};
O.Be = function () {
	return 0 != this.Q
};
O.iw = function () {
	this.Q = 0;
	this.Cn && this.Cn[L](this.T)
};
var xz = {}, yz = k;

function zz(a) {
	a = Wg(a);
	delete xz[a];
	mi(xz) && yz && yz[ad]()
}

function Az() {
	yz || (yz = new wz(function () {
		Bz(ah())
	}, 20));
	var a = yz;
	a.Be() || a[Qd]()
}

function Bz(a) {
	gi(xz, function (b) {
		Cz(b, a)
	});
	mi(xz) || Az()
}

function Dz() {
	this.H = 0;
	this.Dq = this.startTime = k
}
R(Dz, Fl);
Dz[G].Kf = function () {
	this.Ad("begin")
};
Dz[G].Wg = function () {
	this.Ad("end")
};
Dz[G].Ad = function (a) {
	this[A](a)
};

function Ez(a, b, c, d) {
	Dz[L](this);
	(!Qg(a) || !Qg(b)) && f(p("Start and end parameters must be arrays"));
	a[F] != b[F] && f(p("Start and end points must be the same length"));
	this.Qi = a;
	this.ww = b;
	this.duration = c;
	this.vp = d;
	fb(this, []);
	this.Yi = m
}
R(Ez, Dz);
O = Ez[G];
O.Rq = 0;
O.lc = 0;
O.rn = k;
O.play = function (a) {
	if (a || 0 == this.H) this.lc = 0, fb(this, this.Qi);
	else if (1 == this.H) return m;
	zz(this);
	this.startTime = a = ah(); - 1 == this.H && (this.startTime = this[ne] - this.duration * this.lc);
	this.Dq = this[ne] + this.duration;
	this.rn = this[ne];
	this.lc || this.Kf();
	this.Ad("play"); - 1 == this.H && this.Ad("resume");
	this.H = 1;
	var b = Wg(this);
	b in xz || (xz[b] = this);
	Az();
	Cz(this, a);
	return j
};
O.stop = function (a) {
	zz(this);
	this.H = 0;
	a && (this.lc = 1);
	Fz(this, this.lc);
	this.Ad("stop");
	this.Wg()
};
O.i = function () {
	0 == this.H || this[ad](m);
	this.Ad("destroy");
	Ez.a.i[L](this)
};

function Cz(a, b) {
	a.lc = (b - a[ne]) / (a.Dq - a[ne]);
	1 <= a.lc && (a.lc = 1);
	a.Rq = 1E3 / (b - a.rn);
	a.rn = b;
	Fz(a, a.lc);
	1 == a.lc ? (a.H = 0, zz(a), a.Ad("finish"), a.Wg()) : 1 == a.H && a.Rn()
}

function Fz(a, b) {
	Ug(a.vp) && (b = a.vp(b));
	fb(a, wa(a.Qi[F]));
	for (var c = 0; c < a.Qi[F]; c++) a[Sd][c] = (a.ww[c] - a.Qi[c]) * b + a.Qi[c]
}
O.Rn = function () {
	this.Ad("animate")
};
O.Ad = function (a) {
	this[A](new Gz(a, this))
};

function Gz(a, b) {
	xj[L](this, a);
	fb(this, b[Sd]);
	this.x = b[Sd][0];
	this.y = b[Sd][1];
	this.HC = b[Sd][2];
	this.duration = b.duration;
	this.lc = b.lc;
	this.ZB = b.Rq;
	this.state = b.H;
	this.MB = b
}
R(Gz, xj);

function Hz(a, b, c, d, e) {
	Ez[L](this, b, c, d, e);
	lb(this, a)
}
R(Hz, Ez);
O = Hz[G];
O.Xi = Ng;
O.Fe = function () {
	Lg(this.Jc) || (this.Jc = ll(this[ke]));
	return this.Jc
};
O.Rn = function () {
	this.Xi();
	Hz.a.Rn[L](this)
};
O.Wg = function () {
	this.Xi();
	Hz.a.Wg[L](this)
};
O.Kf = function () {
	this.Xi();
	Hz.a.Kf[L](this)
};

function Iz(a, b, c, d, e) {
	(2 != b[F] || 2 != c[F]) && f(p("Start and end points must be 2D"));
	Hz[he](this, arguments)
}
R(Iz, Hz);
Iz[G].Xi = function () {
	if (this.Yi) {
		var a = this[ke],
			b = s[Gb](this[Sd][0]),
			b = s.max(b, 0);
		gb(a, ll(a) ? Ri ? -b : !U || !ej("8") ? a[Od] - b - a[nd] : b : b)
	} else gb(this[ke], s[Gb](this[Sd][0]));
	Sa(this[ke], s[Gb](this[Sd][1]))
};

function Jz(a, b, c, d, e) {
	Tg(b) && (b = [b]);
	Tg(c) && (c = [c]);
	Hz[L](this, a, b, c, d, e);
	(1 != b[F] || 1 != c[F]) && f(p("Start and end points must be 1D"))
}
R(Jz, Hz);
Jz[G].Xi = function () {
	wl(this[ke], this[Sd][0])
};
Jz[G].kb = function () {
	ob(this[ke][I], "")
};
Jz[G].$ = function () {
	ob(this[ke][I], "none")
};

function Kz(a, b, c) {
	Jz[L](this, a, 1, 0, b, c)
}
R(Kz, Jz);
Kz[G].Kf = function () {
	this.kb();
	Kz.a.Kf[L](this)
};
Kz[G].Wg = function () {
	this.$();
	Kz.a.Wg[L](this)
};

function Lz(a, b, c) {
	Jz[L](this, a, 0, 1, b, c)
}
R(Lz, Jz);
Lz[G].Kf = function () {
	this.kb();
	Lz.a.Kf[L](this)
};

function Mz(a, b, c, d) {
	this.G = a || q[J];
	this.Y = mk(this.G);
	this.Dz = !a;
	this.e = k;
	this.qc = "";
	this.Ka = [];
	this.Uf = [];
	this.mu = this.Wj = -1;
	this.ka = m;
	Ya(this, "ac-renderer");
	this.lo = "ac-row";
	this.ns = "active";
	this.xp = "ac-active";
	this.zx = "ac-highlighted";
	this.Eh = b || k;
	this.qB = d != k ? d : j;
	this.Sm = m;
	this.Hz = !! c;
	this.dl = m;
	this.rk = 0
}
R(Mz, Fl);
O = Mz[G];
O.b = function () {
	return this.e
};
O.ho = function (a, b, c) {
	this.qc = b;
	this.Ka = a;
	this.Wj = -1;
	this.mu = ah();
	this.U = c;
	this.Uf = [];
	Nz(this)
};
O.yd = function () {
	this.U && km(this.U, "activedescendant", "");
	this.ka && (this.ka = m, this.U && km(this.U, "haspopup", m), 0 < this.rk ? (wj(this.jg), this.jg = new Kz(this.e, this.rk), this.jg[Bc]()) : xl(this.e, m))
};
O.kb = function () {
	this.ka || (this.ka = j, this.U && (jm(this.U, "combobox"), km(this.U, "autocomplete", "list"), km(this.U, "haspopup", j)), 0 < this.rk ? (wj(this.jg), this.jg = new Lz(this.e, this.rk), this.jg[Bc]()) : xl(this.e, j))
};
O.F = function () {
	return this.ka
};

function Oz(a, b) {
	var c = 0 <= b && b < a.Uf[F] ? a.Uf[b] : i;
	if (a[A]({
		type: "rowhilite",
		tC: c
	}) && (0 <= a.Wj && T(a.Uf[a.Wj], a.xp, a.ns), a.Wj = b, c)) {
		S(c, a.xp, a.ns);
		a.U && km(a.U, "activedescendant", c ? c.id : "");
		var d = a.e,
			c = ml(c, d, i);
		gb(d, c.x);
		Sa(d, c.y)
	}
}
O.Fc = function (a) {
	if (-1 == a) Oz(this, -1);
	else
		for (var b = 0; b < this.Ka[F]; b++)
			if (this.Ka[b].id == a) {
				Oz(this, b);
				break
			}
};

function Pz(a) {
	if (!a.e) {
		var b = a.Y.k("div", {
			style: "display:none"
		});
		a.e = b;
		S(b, a[ld]);
		jm(b, "listbox");
		b.id = Nl(Ml.fa());
		a.Y[v](a.G, b);
		V(b, "click", a.Ag, m, a);
		V(b, "mousedown", a.gr, m, a);
		V(b, "mouseover", a.ir, m, a)
	}
}

function Nz(a) {
	Pz(a);
	a.dl && Ra(a.e[I], "hidden");
	a.vB && (a.e[I].minWidth = a.vB[nd] + "px");
	Va(a.Uf, 0);
	a.Y.co(a.e);
	if (a.Eh && a.Eh.oa) a.Eh.oa(a, a.e, a.Ka, a.qc);
	else {
		var b = k;
		ei(a.Ka, function (c) {
			c = this.fo(c, this.qc);
			this.dl ? this.e[$b](c, b) : this.Y[v](this.e, c);
			b = c
		}, a)
	}
	0 == a.Ka[F] ? a.yd() : (a.kb(), a.Ja(), zl(a.e, j))
}
O.Ja = function () {
	if (this.U && this.Dz) {
		var a;
		a = this.Hz ? 3 : 1;
		this.dl && (a ^= 1);
		Du(this.yv || this.U, a, this.e, a ^ 1, k, k, 65);
		this.dl && Ra(this.e[I], "visible")
	}
};
O.i = function () {
	this.e && (Mj(this.e, "click", this.Ag, m, this), Mj(this.e, "mousedown", this.gr, m, this), Mj(this.e, "mouseover", this.ir, m, this), this.Y.removeNode(this.e), this.e = k, this.ka = m);
	wj(this.jg);
	this.G = k;
	Mz.a.i[L](this)
};

function Qz(a, b, c) {
	if (3 == b[Ib]) {
		var d = k;
		Qg(c) && (1 < c[F] && !a.Sm) && (d = Rh(c, 1));
		c = Rz(a, c);
		if (0 != c[F]) {
			var e = b[Ae],
				g = va("([\\s\\S]*?)\\b(" + c + ")", "gi");
			c = [];
			for (var h = 0, l = g[Cb](e), r = 0; l;) r++, c[w](l[1]), c[w](l[2]), h = g.lastIndex, l = g[Cb](e);
			c[w](e[be](h));
			if (1 < c[F]) {
				d = !a.Sm ? 1 : r;
				for (e = 0; e < d; e++) g = 2 * e, b.nodeValue = c[g], h = a.Y[rc]("b"), Ya(h, a.zx), a.Y[v](h, a.Y[Vb](c[g + 1])), h = b[oe][$b](h, b[Oc]), b[oe][$b](a.Y[Vb](""), h[Oc]), b = h[Oc];
				a = Rh(c, 2 * d);
				b.nodeValue = a[N]("")
			} else d && Qz(a, b, d)
		}
	} else
		for (b = b[uc]; b;) d = b[Oc], Qz(a,
			b, c), b = d
}

function Rz(a, b) {
	var c = "";
	if (!b) return c;
	Qg(b) && (b = Gh(b, function (d) {
		return !jh(d)
	}));
	a.Sm ? Qg(b) ? c = Hh(b, Bh)[N]("|") : (c = hh(b), c = Bh(c), c = c[z](/ /g, "|")) : Qg(b) ? c = 0 < b[F] ? Bh(b[0]) : "" : /^\W/ [yb](b) || (c = Bh(b));
	return c
}
O.fo = function (a, b) {
	var c = this.Y.k("div", {
		className: this.lo,
		id: Nl(Ml.fa())
	});
	jm(c, "option");
	(!this.Eh || !this.Eh.rC) && u(c, ph(a[Kb][bd]()));
	b && this.qB && Qz(this, c, b);
	S(c, this.lo);
	this.Uf[w](c);
	return c
};

function Sz(a, b) {
	for (; b && b != a.e && !Zh(b, a.lo);) b = b[oe];
	return b ? Eh(a.Uf, b) : -1
}
O.Ag = function (a) {
	var b = Sz(this, a[K]);
	0 <= b && this[A]({
		type: "select",
		Nk: this.Ka[b].id
	});
	a[wd]()
};
O.gr = function (a) {
	a[wd]();
	a[Zb]()
};
O.ir = function (a) {
	a = Sz(this, a[K]);
	0 <= a && !(300 > ah() - this.mu) && this[A]({
		type: "hilite",
		Nk: this.Ka[a].id
	})
};

function Tz(a) {
	if (jh(a)) return [];
	var b = [];
	a = hh(a);
	a = a[td](/\s*,\s*/);
	for (var c = 0; c < a[F]; c++) {
		var d = a[c];
		jh(d) || (-1 != d[Kd](De) && f(zn('"%1" is not a valid tag name. The following characters are not allowed: ",<,>,?,&,/,\\,^', d)), b[w](d))
	}
	return b
}

function Uz(a) {
	if (ua == k) return k;
	var b = [];
	wr[wb](function (g) {
		for (var h = 0, l; l = g[h]; h++) b[w](l[nc]())
	});
	var c = new ez(b),
		d = new Vz,
		e = new qz,
		c = new hz(c, d, e);
	e.qa = c;
	e.Bl(a);
	tz(e, m);
	return c
}

function Vz() {
	Mz[L](this);
	this.Lt = []
}
R(Vz, Mz);
Vz[G].i = function () {
	Fh(this.Lt, Oj);
	Vz.a.i[L](this)
};
Vz[G].fo = function (a, b) {
	var c = Vz.a.fo[L](this, a, b);
	this.Lt[w](V(c, "click", Ng));
	return c
};

function Wz(a, b) {
	Bu[L](this, a, b);
	this.uh = j;
	this.gd(j);
	this.D(m, j);
	this.Pb = new zi
}
R(Wz, Bu);
O = Wz[G];
O.ap = m;
O.js = 0;
O.mq = k;
O.xb = function (a) {
	Wz.a.xb[L](this, a);
	(a = a[Rd]("for") || a.htmlFor) && this.td(this.v().b(a), 1)
};
O.Z = function () {
	Wz.a.Z[L](this);
	xi(this.Pb, this.Lp, this);
	var a = this[fd]();
	a.j(this, "action", this.yy);
	a.j(Vk(this.v()), "mousedown", this.Ts, j);
	Si && a.j(Vk(this.v()), "contextmenu", this.Ts, j)
};
O.td = function (a, b, c, d, e) {
	if (!a || !this.Pb.xd(Wg(a))) a ? (b = {
		e: a,
		yu: b,
		ny: c,
		Hq: d ? "contextmenu" : "mousedown",
		li: e
	}, this.Pb.set(Wg(a), b), a = b) : a = k, this.P && this.Lp(a)
};
O.Lp = function (a) {
	this[fd]().j(a.e, a.Hq, this.it)
};
O.detach = function (a) {
	(!a || !this.Pb.xd(Wg(a))) && f(p("Menu not attached to provided element, unable to detach."));
	a = Wg(a);
	if (this.P) {
		var b = this.Pb.ma(a);
		this[fd]().pa(b.e, b.Hq, this.it)
	}
	this.Pb[pc](a)
};

function Xz(a, b, c, d, e) {
	var g = a.F();
	a.Ur() && a.ap ? a.$() : (a.mq = e || k, a[A]("beforeshow") && (c = "undefined" != typeof c ? c : 4, g || Ra(a.b()[I], "hidden"), xl(a.b(), j), b.Ja(a.b(), c, d), g || Ra(a.b()[I], "visible"), ku(a, -1), a.D(j)))
}
O.gu = function (a, b, c) {
	b = Lg(a.yu) ? new Iu(a.e, a.yu, j) : new ww(b, c);
	b.Wk && b.Wk(5);
	Xz(this, b, a.ny, a.li, a.e)
};
O.$ = function () {
	this.F() && (this.D(m), this.F() || (this.js = ah(), this.mq = k))
};
O.Ur = function () {
	return this.F() || 150 > ah() - this.js
};
O.yy = function () {
	this.$()
};
O.it = function (a) {
	for (var b = this.Pb.xf(), c = 0; c < b[F]; c++) {
		var d = this.Pb.ma(b[c]);
		if (d.e == a[gc]) {
			this.gu(d, a[Uc], a[Vc]);
			a[Zb]();
			a[wd]();
			break
		}
	}
};
O.Ts = function (a) {
	this.F() && !this.Qc(a[K]) && this.$()
};
O.Cc = function (a) {
	Wz.a.Cc[L](this, a);
	this.$()
};
O.i = function () {
	Wz.a.i[L](this);
	this.Pb && (this.Pb[Fc](), delete this.Pb)
};

function Yz(a, b, c, d) {
	this.Ie = a;
	this.Bu = b;
	this.zl = [];
	this.kg = [];
	this.kt = c;
	this.cq = d
}
O = Yz[G];
O.ua = function (a) {
	this.d = a;
	Zz(this);
	op.Zc && this.ih()
};

function Zz(a) {
	if (a.lb) return m;
	a.lb = new Wz;
	a.lb.oa(q[J]);
	a.lb.ap = j;
	a.lb.td(a.Ie, Cu.ql, Cu.tl);
	V(a.lb, "action", function (b) {
		b = b[K].S();
		b != k && (b = P(b, a), b())
	});
	V(a.lb, "show", a.Oi, m, a);
	V(a.lb, "hide", a.Xc, m, a);
	V(a.lb, "beforeshow", a.st, m, a);
	S(a.lb.b(), "subscription-folders-menu");
	return j
}
O.Oi = function () {
	ov(this.Ie, j);
	this.kt && this.kt()
};
O.Xc = function () {
	ov(this.Ie, m);
	this.cq && this.cq()
};
O.ih = function () {
	$z(this);
	var a = 0 < this.kg[F] ? "Change folders..." : "Add to a folder...";
	u(Y(this.Ie, "goog-button-body"), a)
};
O.st = function () {
	aA(this);
	bA(this);
	this.lb.M(new yu("New folder...", this.Ep));
	cA(this)
};

function cA(a) {
	var b = vl(a.Ie),
		c = wk(n)[M];
	a = a.lb.b();
	var d = tl(a),
		e = b.top - 20,
		c = c - b.top - b[M] - 20;
	c >= d[M] || c >= e || (c = e, el(a, b[B], e >= d[M] ? e - d[M] : 20));
	a[I].maxHeight = c + "px"
}

function aA(a) {
	for (var b = a.lb.wf() - 1; 0 <= b; --b) a.lb.Pe(b)
}

function bA(a, b) {
	dA(a);
	$z(a);
	if (b && 0 < a.zl[F]) {
		var c = new yu(0 < a.kg[F] ? "Change folders..." : "Add to a folder...");
		c.Ca(m);
		a.lb.M(c)
	}
	for (var d = 0, e; e = a.zl[d]; d++) c = new yu(e[nc](), Q(a.ov, e)), c.Ki(j), eA(a, e) && c.Li(j), a.lb.M(c)
}

function fA(a, b) {
	for (var c = [], d = [], e = eA(a, b), g = a.kg, h = 0, l; l = g[h]; h++) {
		var r = xp(l);
		c[w](r);
		(!e || !l.W(b)) && d[w](r)
	}
	e || d[w](xp(b));
	e = [];
	try {
		e = Tz(d[N](","))
	} catch (t) {
		return ja('One of the tags you tried to enter is invalid. The following characters are not allowed: ",<,>,?,&,/,\\,^'), k
	}
	return sp(c, e)
}

function eA(a, b) {
	for (var c = 0, d; d = a.kg[c]; c++)
		if (b.W(d)) return j;
	return m
}
O.Ep = function () {
	var a;
	(a = ds("What would you like to call this new folder?", "")) ? (a = Hp(Z, a), a = eA(this, a) ? k : fA(this, a)) : a = k;
	a && (this.Bu(a), this.ih())
};
O.ov = function (a) {
	fA(this, a) && (this.Bu(fA(this, a)), this.ih())
};

function dA(a) {
	wr[wb](function (b) {
		a.zl = b
	})
}

function $z(a) {
	op.ve(a.d, function (b) {
		wr[wb](function (c) {
			for (var d = {}, e = 0, g; g = c[e]; e++) d[ko(g)] = 1;
			a.kg = [];
			if (b && b.Ld)
				for (e = 0; g = b.Ld[e]; e++) ko(g) in d && a.kg[w](g)
		})
	})
}

function gA(a, b, c) {
	var d = hA(a, b, c);
	b = {};
	for (var e = 0, g; g = d[e]; e++) b[g] = e;
	for (var d = [], e = 0, h; h = c[e]; e++) g = iA(a, h.g()), d[b[g]] = h;
	return d = Gh(d, function (l) {
		return l != k
	})
}

function hA(a, b, c) {
	for (var d = [], e = [], g = 0, h; h = c[g]; g++) d[w](iA(a, h.g()));
	if (b.g()[C] in a.Wn) e = a.Wn[b.g()[C]];
	else {
		if ((h = vx.tb(b.g(), Pf)) && a.sB[yb](h))
			for (var l, g = 0; g < h[F]; g += 8) l = h[be](g, g + 8), Kh(d, l) && e[w](l);
		if (0 == e[F])
			for (g = 0; h = c[g]; g++) l = iA(a, h.g()), e[g] = l
	}
	for (g = 0; l = d[g]; g++) Kh(e, l) || e[w](l);
	jA(a, b, e, j);
	return e
}

function jA(a, b, c, d) {
	a.Wn[b.g()[C]] = c;
	d || n[qd](function () {
		vx.Kc(b.g(), Pf, c[N](""))
	}, 2E3)
}

function kA(a, b, c, d, e) {
	if (c != d) {
		var g = hA(a, b, [c]),
			h;
		c = iA(a, c.g());
		var l = iA(a, d.g());
		d = k;
		for (var r = 0, t; t = g[r]; r++) t == c && (d = r), t == l && (h = r);
		e && h++;
		if (h != d) {
			if (d != k) g[we](d, 1), g[we](h < d ? h : h - 1, 0, c);
			else g[we](h, 0, c);
			jA(a, b, g)
		}
	}
}

function iA(a, b) {
	return (op.hb(b) || wr.hb(b)).ku
}
var lA = new function () {
		this.Wn = {};
		this.sB = /^(?:[0-9A-F]{8})*$/
	};

function mA(a, b, c, d, e, g) {
	if (d) {
		for (var h = [], l = 0; l < b[F]; ++l) {
			var r = b[l];
			h[l] = [r[0][Be](), r[1]]
		}
		b = h
	}
	g = 0 < g ? ah() + g : 0;
	return nA(a, b, c, d, e || [], g, 0)
}
var oA = ["SCRIPT", "STYLE", "TEXTAREA"];

function nA(a, b, c, d, e, g, h) {
	if (0 < g && ah() >= g || 200 < h) return m;
	var l = m;
	if (3 == a[Ib]) {
		if (b = pA(a[Ae], b, c, d), b != k) {
			l = ok(a)[rc]("SPAN");
			u(l, b);
			for (b = a[oe];
				(c = l[uc]) != k;) b[$b](c, a);
			b[Hd](a);
			l = j
		}
	} else if (a.hasChildNodes() && !Kh(oA, a[je]) && !Ih(a[ld][td](/\s+/), function (t) {
		return Kh(e, t)
	})) {
		++h;
		for (var r = a[uc]; r;) a = r[Oc], r = nA(r, b, c, d, e, g, h), l = l || r, r = a
	}
	return l
}
var qA = /\W/;

function pA(a, b, c, d) {
	var e = m,
		g = d ? a[Be]() : a,
		h = g[F];
	d = b[F];
	for (var l = wa(d), r = 0; r < d; r++) {
		var t = b[r],
			y = [],
			H = t[0];
		if ("" != H)
			for (var Ha = t[1], t = H[F], ga = 0; ga < h;) {
				var hb = g[cc](H, ga);
				if (-1 == hb) break;
				else {
					var ga = hb - 1,
						lj = hb + t;
					if (!Ha || (0 > ga || qA[yb](g[Tb](ga))) && (lj >= h || qA[yb](g[Tb](lj)))) y[w](hb), e = j;
					ga = hb + t
				}
			}
		l[r] = y
	}
	if (e) {
		e = [];
		for (ga = 0;;) {
			for (var Mh, g = -1, r = 0; r < d; r++)
				if (y = l[r], 0 != y[F]) {
					for (hb = y[0]; 0 <= hb && hb < ga;) y[zb](), hb = 0 == y[F] ? -1 : y[0];
					if (0 <= hb && (0 > g || hb < g)) Mh = r, g = hb
				}
			if (0 > g) break;
			l[Mh][zb]();
			e[w](ph(a[Xc](ga,
				g - ga)));
			t = b[Mh][0][F];
			r = ph(a[Xc](g, t));
			e[w](c(Mh, r));
			ga = g + t
		}
		e[w](ph(a[Xc](ga)));
		return e[N]("")
	}
	return k
}

function rA(a) {
	var b = [];
	a = a[z](/([^\s\-])"([^\s])/g, "$1 $2");
	for (var c = k, d = /(-?)"(.*?)"/; c = d[Cb](a);) {
		var e = c[2];
		"-" != c[1] && b[w](e);
		a = a[be](0, c[md]) + a[be](c[md] + c[0][F])
	}
	return b[Sb](lh(a[z](/\xa0|[ \t]+/g, " "))[td](" "))
}

function sA(a, b) {
	function c(l, r) {
		return '<b class="highlighted' + l % 7 + '">' + r + "</b>"
	}
	if (a) {
		var d = rA(b);
		if (0 != d) {
			for (var e = 0, g; g = d[e]; e++) 1 >= g[F] && d[we](e, 1);
			for (var h = [], e = 0; g = d[e]; e++) h[w]([g[Be](), j]);
			for (e = 0; d = a[e]; e++) mA(d, h, c, j)
		}
	}
}
var tA, uA, vA, wA, xA, yA, zA, AA, BA, CA, DA, EA, FA, GA, HA, IA;
tA = function () {
	var a = uA || n;
	a.iframes.setHandler("shareboxDialog", {
		onOpen: function (b) {
			b.openInto(b.getOpenParams()[ke], {
				"class": "abc",
				scrolling: "auto",
				width: "100%",
				height: "100%",
				allowtransparency: "true"
			});
			var c = b.getIframeEl();
			0 < navigator.userAgent[cc]("MSIE") && (Ra(c[I], "hidden"), c.onreadystatechange = function () {
				Ra(c[I], "");
				delete c.onreadystatechange
			});
			return b
		},
		onReady: function (b) {
			n[qd](function () {
				vA = b;
				wA && b.setPrefill(wA);
				b.setParamBag(xA);
				yA && (zA = a[rd][Wc][I].overflow, a[rd][Wc][I].overflow = "hidden");
				AA && AA({})
			}, 0)
		},
		onClose: function (b, c) {
			c && (c.loggedOut && BA && BA(), c.footerCallback && CA && CA());
			a[rd][J][Hd](a[rd][Pb]("googleShareboxIframeDiv"));
			yA && (a[rd][Wc][I].overflow = zA);
			DA.lk = m;
			EA && EA(c)
		}
	})
};
FA = function () {
	if (!vA) {
		var a = uA || n;
		a[rd][J][Hd](a[rd][Pb]("googleShareboxIframeDiv"));
		DA.lk = m;
		GA && GA({})
	}
};
DA = function (a, b) {
	if (!DA.lk) {
		wA = a;
		b && (AA = b.onShareOpened, EA = b.onShareClosed, GA = b.onShareTimedOut, BA = b.onNotLoggedInForGooglePlus, CA = b.footerCallback, HA = b.sessionIndex, IA = b.socialHost, uA = b.window, b.window = k, yA = b.hideDoubleScrollBar, xA = b);
		var c = uA || n,
			d = c[rd];
		HA = HA || "0";
		IA = IA || "https://plus.google.com";
		tA();
		DA.lk = j;
		var e = IA + "/u/" + HA + "/_/sharebox/dialog",
			g = {};
		g.claimedOrigin = d[yd][Td] + "//" + d[yd].host;
		var h = m;
		b && ("games" == b.apiMode && (g.mode = b.apiMode), b.hl && (g.hl = b.hl), b.sourceForLogging && (g.source = b.sourceForLogging),
			b.dialogTitle && (g.dialogTitle = b.dialogTitle), b.dialogSubtitle && (g.dialogSubtitle = b.dialogSubtitle), b.shareButtonText && (g.shareButtonText = b.shareButtonText), b.cancelButtonText && (g.cancelButtonText = b.cancelButtonText), b.showIcons && (g.showIcons = "true"), b.editorText && (g.editorText = b.editorText), b.editorHelperText && (g.editorHelperText = b.editorHelperText), b.segments && (g.segments = c.JSON.stringify(b.segments)), b.birthday && (g.birthday = b.birthday), b.secb && (g.secb = b.secb), b.recipients && (g.rcpt = b.recipients[N](",")),
			b.aclJson && (g.ajfs = b.aclJson), h = !! b.updateMetadata, b.footer && (g.footer = b.footer));
		var l = k;
		if (!h) {
			var r;
			if (a && a[Nc] && 1 == a[Nc][F] && a[Nc][0].properties) {
				var h = a[Nc][0].properties,
					t = m,
					y;
				for (y in h)
					if ("url" != y) {
						t = j;
						break
					}!t && (h.url && h.url[0]) && (r = h.url[0])
			}
			r ? (g.url = r, l = "url") : a && (g.md = c.gadgets.json.stringify(a), l = "md")
		}
		l && (g.prm = l);
		g.sts = (+new Date)[bd](36);
		750 > d[Wc][Vd] && (g.susp = j);
		d[de] && (g.hostiemode = d[de]);
		g.wpp = "1";
		l = d[rc]("div");
		l.id = "googleShareboxIframeDiv";
		Ga(l[I], "left:0;top:0;width:100%;height:100%;position:fixed;z-index:99999");
		d[J][v](l);
		c.iframes[xb](e, {
			element: l,
			allowPost: j,
			style: "shareboxDialog"
		}, g, {});
		var H = d[rc]("div");
		Ga(H[I], "left:0;top:0;width:100%;height:100%;position:absolute;background:#fff;opacity:0;transition:opacity 0.25s;-webkit-transition:opacity 0.25s;filter:alpha(opacity=75);z-index:-1");
		l[v](H);
		n[qd](function () {
			$a(H[I], ".75")
		}, 0);
		n[qd](FA, 15E3)
	}
};
DA.lk = m;

function JA(a) {
	this.Va = a || n;
	this.nk = V(this.Va, "resize", this.nx, m, this);
	this.Ud = wk(this.Va);
	if (Si && Li || Qi && this.Va.self != this.Va.top) this.kl = n[vd](P(this.Xp, this), 500)
}
R(JA, Fl);
O = JA[G];
O.nk = k;
O.Va = k;
O.Ud = k;
O.kl = k;
O.Zq = function () {
	return this.Ud ? this.Ud.Na() : k
};
O.i = function () {
	JA.a.i[L](this);
	this.nk && (Oj(this.nk), this.nk = k);
	this.kl && (n.clearInterval(this.kl), this.kl = k);
	this.Ud = this.Va = k
};
O.nx = function () {
	this.Xp()
};
O.Xp = function () {
	var a = wk(this.Va);
	hk(a, this.Ud) || (this.Ud = a, this[A]("resize"))
};

function KA(a) {
	this.bi = {};
	this.ai = {};
	this.T = new Jl(this);
	this.G = a
}
R(KA, Fl);
var LA = [U ? "readystatechange" : "load", "abort", "error"];

function MA(a, b, c) {
	(c = Sg(c) ? c : c.src) && (a.bi[b] = c)
}
KA[G].start = function () {
	var a = this.bi;
	Fh(li(a), function (b) {
		var c = a[b];
		if (c && (delete a[b], !this.he)) {
			var d;
			d = this.G ? mk(this.G).k("img") : new Image;
			this.T.j(d, LA, this.ct);
			this.ai[b] = d;
			d.id = b;
			d.src = c
		}
	}, this)
};
KA[G].ct = function (a) {
	var b = a[gc];
	if (b) {
		if ("readystatechange" == a[E])
			if ("complete" == b.readyState) La(a, "load");
			else return;
			"undefined" == typeof b[Jd] && ("load" == a[E] ? (b.naturalWidth = b[x], b.naturalHeight = b[M]) : (b.naturalWidth = 0, b.naturalHeight = 0));
		this[A]({
			type: a[E],
			target: b
		});
		if (!this.he && (a = b.id, delete this.bi[a], b = this.ai[a])) delete this.ai[a], this.T.pa(b, LA, this.ct), mi(this.ai) && mi(this.bi) && this[A]("complete")
	}
};
KA[G].i = function () {
	delete this.bi;
	delete this.ai;
	wj(this.T);
	KA.a.i[L](this)
};

function NA() {
	this.ia = [];
	this.Pb = [];
	this.eh = []
}
R(NA, Fl);
O = NA[G];
O.fn = m;
O.jn = m;
O.Um = m;

function OA(a, b) {
	a.Pb[w](b);
	b.jn = j;
	a.fn = j
}
O.Zt = function (a) {
	this.Sk = a
};
O.ta = function () {
	if (!this.Um) {
		for (var a, b = 0; a = this.ia[b]; b++) PA(this, a);
		this.Um = j
	}
};

function PA(a, b) {
	a.fn && (V(b[ke], "mousedown", b.Js, m, b), a.To && S(b[ke], a.To));
	a.jn && a.$o && S(b[ke], a.$o)
}

function QA(a, b) {
	a.fn && (Mj(b[ke], "mousedown", b.Js, m, b), a.To && T(b[ke], a.To));
	a.jn && a.$o && T(b[ke], a.$o);
	b.s()
}

function RA(a) {
	for (var b, c = 0; b = a.ia[c]; c++) QA(a, b);
	Va(a.ia, 0)
}
O.Pi = function (a, b) {
	if (!this.fc)
		if (this.fc = b, this[A](new SA("dragstart", this, this.fc)) == m) this.fc = k;
		else {
			var c = b.ng,
				d;
			a: switch (d = c.cloneNode(j), c[je][Be]()) {
			case "tr":
				d = yk("table", k, yk("tbody", k, d));
				break a;
			case "td":
			case "th":
				d = yk("table", k, yk("tbody", k, yk("tr", k, d)));
				break a
			}
			this.lw && S(d, this.lw);
			this.rg = d;
			d = ok(c);
			d[J][v](this.rg);
			var e = this.rg,
				g = kl(c),
				c = Cl(c, "margin");
			g.x -= 2 * (c[B] || 0);
			g.y -= 2 * (c.top || 0);
			Xa(e[I], "absolute");
			Ca(e[I], g.x + "px");
			e[I].top = g.y + "px";
			this.Za = new jy(e);
			this.Za.Zt(this.Sk);
			V(this.Za, "drag", this.Ks, m, this);
			V(this.Za, "end", this.mf, m, this);
			V(d[J], "selectstart", this.xu);
			this.oh = [];
			for (d = 0; c = this.Pb[d]; d++)
				for (var h, e = 0; h = c.ia[e]; e++)
					for (var g = c, l = [h[ke]], r = this.oh, t = 0; t < l[F]; t++) {
						var y = l[t],
							H = kl(y),
							Ha = tl(y),
							H = new Yk(H.y, H.x + Ha[x], H.y + Ha[M], H.x);
						r[w](new TA(H, g, h, y));
						UA(this, H)
					}
			this.Xd || (this.Xd = new Yk(0, 0, 0, 0));
			for (d = 0; c = this.eh[d]; d++) c.sj = [], c.no = c.e[Wd], c.oo = c.e[Zc], e = kl(c.e), g = tl(c.e), c.Fa = new Yk(e.y, e.x + g[x], e.y + g[M], e.x);
			for (d = 0; g = this.oh[d]; d++)
				for (e = 0; c = this.eh[e]; e++) Kk(c.e,
					g.e) && (c.sj[w](g), g.Ei = c);
			this.Ze = k;
			for (d = 0; c = this.eh[d]; d++) V(c.e, "scroll", this.fq, m, this);
			this.Za.Pi(a);
			a[Zb]()
		}
};
O.mf = function (a) {
	var b = a.kw ? k : this.Ze;
	if (b && b.U) {
		var c = a[Uc];
		a = a[Vc];
		var d = Xk(mk(this.rg)),
			e = c + d.x,
			d = a + d.y,
			g;
		this.nh && (g = this.nh(b.Jd, b.Fa, e, d));
		this[A](new SA("drag", this, this.fc, b.U, b.Jd, b.e, c, a, e, d));
		b.U[A](new SA("drop", this, this.fc, b.U, b.Jd, b.e, c, a, e, d, g))
	}
	this[A](new SA("dragend", this, this.fc));
	Mj(this.Za, "drag", this.Ks, m, this);
	Mj(this.Za, "end", this.mf, m, this);
	Mj(ok(this.fc.ng)[J], "selectstart", this.xu);
	for (b = 0; c = this.eh[b]; b++) Mj(c.e, "scroll", this.fq, m, this), c.sj = [];
	this.Za.s();
	Hk(this.rg);
	delete this.fc;
	delete this.rg;
	delete this.Za;
	delete this.oh;
	delete this.Ze
};
O.Ks = function (a) {
	var b, c = Xk(mk(this.rg));
	b = new ek(a[Uc] + c.x, a[Vc] + c.y);
	var c = b.x,
		d = b.y,
		e = this.Ze,
		g;
	if (e) {
		this.nh && e.U && (g = this.nh(e.Jd, e.Fa, c, d));
		if (e.Fa[ge](b) && g == this.yp) return;
		e.U && (this[A](new SA("dragout", this, this.fc, e.U, e.Jd, e.e)), e.U[A](new SA("dragout", this, this.fc, e.U, e.Jd, e.e, i, i, i, i, this.yp)));
		this.yp = g;
		this.Ze = k
	}
	if (this.Xd[ge](b)) {
		a: {
			for (var h = 0; e = this.oh[h]; h++)
				if (e.Fa[ge](b))
					if (e.Ei) {
						if (e.Ei.Fa[ge](b)) {
							b = e;
							break a
						}
					} else {
						b = e;
						break a
					}
			b = k
		}
		if ((e = this.Ze = b) && e.U) this.nh && (g = this.nh(e.Jd,
			e.Fa, c, d)), c = new SA("dragover", this, this.fc, e.U, e.Jd, e.e), c.Wd = g, this[A](c), e.U[A](new SA("dragover", this, this.fc, e.U, e.Jd, e.e, a[Uc], a[Vc], i, i, g));
		else if (!e) {
			this.Xb || (this.Xb = new TA(this.Xd.Na()));
			a = this.Xb.Fa;
			a.top = this.Xd.top;
			qb(a, this.Xd[Ce]);
			ib(a, this.Xd[Zd]);
			Ca(a, this.Xd[B]);
			for (g = 0; e = this.oh[g]; g++) b = e.Fa, e.Ei && (e = e.Ei.Fa, b = new Yk(s.max(b.top, e.top), s.min(b[Ce], e[Ce]), s.min(b[Zd], e[Zd]), s.max(b[B], e[B]))), e = k, c >= b[Ce] ? e = b[Ce] > a[B] ? b[Ce] : a[B] : c < b[B] && (e = b[B] < a[Ce] ? b[B] : a[Ce]), h = k, d >= b[Zd] ?
				h = b[Zd] > a.top ? b[Zd] : a.top : d < b.top && (h = b.top < a[Zd] ? b.top : a[Zd]), e !== k && h !== k && (s.abs(e - c) > s.abs(h - d) ? h = k : e = k), e === k ? h !== k && (h <= d ? a.top = h : ib(a, h)) : e <= c ? Ca(a, e) : qb(a, e);
			this.Ze = 10 <= (a[Ce] - a[B]) * (a[Zd] - a.top) ? this.Xb : k
		}
	}
};
O.xu = function () {
	return m
};
O.fq = function (a) {
	for (var b = 0, c; c = this.eh[b]; b++)
		if (a[K] == c.e) {
			var d = c.oo - c.e[Zc],
				e = c.no - c.e[Wd];
			c.oo = c.e[Zc];
			c.no = c.e[Wd];
			this.Xb && this.Ze == this.Xb && (0 < d ? this.Xb.Fa.top += d : ib(this.Xb.Fa, this.Xb.Fa[Zd] + d), 0 < e ? Ca(this.Xb.Fa, this.Xb.Fa[B] + e) : qb(this.Xb.Fa, this.Xb.Fa[Ce] + e));
			for (var g = 0, h; h = c.sj[g]; g++) h = h.Fa, h.top += d, Ca(h, h[B] + e), ib(h, h[Zd] + d), qb(h, h[Ce] + e), UA(this, h)
		}
	this.Za.ft(a)
};

function VA(a, b) {
	a.nh = b
}

function UA(a, b) {
	if (1 == a.oh[F]) a.Xd = new Yk(b.top, b[Ce], b[Zd], b[B]);
	else {
		var c = a.Xd;
		Ca(c, s.min(b[B], c[B]));
		qb(c, s.max(b[Ce], c[Ce]));
		c.top = s.min(b.top, c.top);
		ib(c, s.max(b[Zd], c[Zd]))
	}
}
O.i = function () {
	NA.a.i[L](this);
	RA(this)
};

function SA(a, b, c, d, e, g, h, l, r, t, y) {
	xj[L](this, a);
	this.TB = b;
	this.yb = c;
	this.VB = d;
	this.gc = e;
	this.Fh = g;
	Pa(this, h);
	Qa(this, l);
	this.FC = r;
	this.GC = t;
	this.Wd = y
}
R(SA, xj);
SA[G].i = function () {};

function WA(a, b) {
	lb(this, pk(a));
	this.data = b;
	this.G = k;
	this[ke] || f(p("Invalid argument"))
}
R(WA, Fl);
O = WA[G];
O.ng = k;
O.ym = function (a) {
	return a
};
O.Js = function (a) {
	if (Cj(a)) {
		var b = this.ym(a[K]);
		b && (V(b, "mousemove", this.Ug, m, this), V(b, "mouseout", this.Ug, m, this), V(b, "mouseup", this.Mn, m, this), this.ng = b, this.Vo = new ek(a[Uc], a[Vc]), a[Zb]())
	}
};
O.Te = function (a) {
	this.G = a
};
O.Ug = function (a) {
	var b = this.ng,
		c = "mouseout" == a[E] && a[K] == b;
	if (5 < s.abs(a[Uc] - this.Vo.x) + s.abs(a[Vc] - this.Vo.y) || c) Mj(b, "mousemove", this.Ug, m, this), Mj(b, "mouseout", this.Ug, m, this), Mj(b, "mouseup", this.Mn, m, this), this.G.Pi(a, this)
};
O.Mn = function () {
	var a = this.ng;
	Mj(a, "mousemove", this.Ug, m, this);
	Mj(a, "mouseout", this.Ug, m, this);
	Mj(a, "mouseup", this.Mn, m, this);
	delete this.Vo;
	this.ng = k
};

function TA(a, b, c, d) {
	this.Fa = a;
	this.U = b;
	this.Jd = c;
	this.e = d
}
TA[G].Ei = k;

function XA(a) {
	this.sj = [];
	this.e = a;
	this.oo = this.no = 0;
	this.Fa = k
}

function YA(a, b) {
	NA[L](this);
	var c = new WA(a, b);
	c.Te(this);
	this.ia[w](c)
}
R(YA, NA);

function ZA() {
	NA[L](this)
}
R(ZA, NA);
ZA[G].M = function (a, b) {
	var c = new WA(a, b);
	$A(this, c)
};

function $A(a, b) {
	b.Te(a);
	a.ia[w](b);
	a.Um && PA(a, b)
}
ZA[G].Oe = function (a) {
	a = pk(a);
	for (var b, c = 0; b = this.ia[c]; c++)
		if (b[ke] == a) {
			this.ia[we](c, 1);
			QA(this, b);
			break
		}
};

function aB(a, b, c) {
	this.A = a;
	this.Di = new Gl(50);
	this.J = new Jl(this);
	this.Qk = new ek;
	this.Pl = vl(a);
	this.li = b || 0;
	if (b) {
		if (a = this.Pl.Na(), b = this.li) {
			var d = s.min(b, 0.25 * a[M]);
			a.top += d;
			pb(a, a[M] - 2 * d);
			b = s.min(b, 0.25 * a[x]);
			a.top += b;
			pb(a, a[M] - 2 * b)
		}
	} else a = this.Pl;
	this.Ok = a;
	c || this.J.j(ok(this.A), "mousemove", this.Uy);
	this.J.j(this.Di, "tick", this.Xg)
}
R(aB, uj);
O = aB[G];
O.eq = m;
O.Bx = j;
O.Xg = function () {
	Sa(this.A, this.A[Zc] + this.Qk.y);
	gb(this.A, this.A[Wd] + this.Qk.x)
};
O.Uy = function (a) {
	var b = this.Bx ? this.Hl(a[Uc], this.Ok[B], this.Ok[x]) : 0,
		c = this.Hl(a[Vc], this.Ok.top, this.Ok[M]);
	this.Qk.x = b;
	this.Qk.y = c;
	if (!(b = !b && !c))
		if (b = this.eq) b = a[Uc], a = a[Vc], c = this.Pl, b = !(c[B] <= b && c[B] + c[x] >= b && c.top <= a && c.top + c[M] >= a);
	b ? this.Di[ad]() : this.Di.Sc || this.Di[Qd]()
};
O.Hl = function (a, b, c) {
	var d = 0;
	a < b ? d = -8 : a > b + c && (d = 8);
	return d
};
O.i = function () {
	aB.a.i[L](this);
	this.J.s();
	this.Di.s()
};

function bB(a, b) {
	this.wq = [];
	this.nB = !! b;
	this.J = new Jl(this);
	if (a)
		if (Qg(a))
			for (var c = 0; c < a[F]; c++) cB(this, a[c].V);
		else cB(this, a.V);
		else cB(this, Vk(mk()));
	this.hs = ah()
}
R(bB, Fl);
bB[G].Wx = "";
bB[G].Gs = 0;
var dB = "click dblclick mousedown mouseup mousemove touchstart touchmove touchend".split(" "),
	eB = ["keydown", "keyup"];
bB[G].i = function () {
	bB.a.i[L](this);
	this.J.s();
	this.J = k;
	delete this.wq
};

function cB(a, b) {
	a.wq[w](b);
	var c = !a.nB;
	a.J.j(b, eB, a.Uj, c);
	a.J.j(b, dB, a.Uj, c)
}
bB[G].Uj = function (a) {
	var b = m;
	switch (a[E]) {
	case "mousemove":
		if ("number" == typeof this.ls && this.ls != a[Uc] || "number" == typeof this.ms && this.ms != a[Vc]) b = j;
		this.ls = a[Uc];
		this.ms = a[Vc];
		break;
	default:
		b = j
	}
	b && (b = ah(), a = a[E], this.hs = b, this.Wx = a, b > this.Gs && (this[A]("activity"), this.Gs = b + 3E3))
};

function fB(a) {
	return 3 * a * a - 2 * a * a * a
}

function gB(a, b, c) {
	var d = yk("div", {
		style: "overflow:hidden"
	});
	b = pk(b);
	b[oe][Bb](d, b);
	d[v](b);
	this.Fj = d;
	this.Pc = k;
	Uu[L](this, a, b, c);
	a = this.Ce();
	ob(this.Fj[I], a ? "" : "none");
	Wu(this, a)
}
R(gB, Uu);
O = gB[G];
O.Ip = 500;
O.Hp = function (a) {
	return 1 - s.pow(1 - a, 3)
};
O.Td = function (a) {
	if (this.Ce() != a || this.Pc) {
		"none" == this.Fj[I][re] && ob(this.Fj[I], "");
		var b = this.O()[xe],
			c = 0;
		this.Pc ? (a = this.Ce(), Qj(this.Pc), this.Pc[ad](m), c = oa(this.O()[I].marginTop, 10), c = b - s.abs(c)) : c = a ? 0 : b;
		Wu(this, a);
		this.Pc = new Ez([0, c], [0, a ? b : 0], this.Ip, this.Hp);
		V(this.Pc, ["begin", "animate", "end"], this.Ay, m, this);
		V(this.Pc, "end", P(this.By, this, a));
		this.Pc[Bc](m)
	}
};
O.Ay = function (a) {
	var b = this.O();
	b[I].marginTop = a.y - b[xe] + "px"
};
O.By = function (a) {
	a && (this.O()[I].marginTop = "0");
	Qj(this.Pc);
	this.vg = a;
	this.Pc = k;
	a || ob(this.Fj[I], "none");
	this[A](new Xu("toggle", this, a))
};

function hB(a, b, c) {
	yu[L](this, a, b, c);
	this.Vf(j)
}
R(hB, yu);
ym("goog-checkbox-menuitem", function () {
	return new hB(k)
});

function iB() {}
R(iB, rm);
Og(iB);
O = iB[G];
O.k = function (a) {
	var b = {
		"class": "goog-inline-block " + this.pe(a)[N](" "),
		title: a.we() || ""
	};
	return a.v().k("div", b, a.yc())
};
O.Ib = function () {
	return "button"
};
O.Tb = function (a) {
	return "DIV" == a[je]
};
O.I = function (a, b) {
	S(b, "goog-inline-block");
	return iB.a.I[L](this, a, b)
};
O.S = function () {
	return ""
};
O.w = function () {
	return "goog-flat-button"
};
ym("goog-flat-button", function () {
	return new Mm(k, iB.fa())
});

function jB() {}
R(jB, iB);
Og(jB);
O = jB[G];
O.k = function (a) {
	var b = {
		"class": "goog-inline-block " + this.pe(a)[N](" "),
		title: a.we() || ""
	};
	return a.v().k("div", b, [this[Jb](a.yc(), a.v()), this.uj(a.v())])
};
O.O = function (a) {
	return a && a[uc]
};
O.I = function (a, b) {
	var c = rk("*", "goog-menu", b)[0];
	if (c) {
		xl(c, m);
		Vk(a.v())[J][v](c);
		var d = new Bu;
		d.I(c);
		a.hd(d)
	}
	rk("*", this.w() + "-caption", b)[0] || b[v](this[Jb](b[Hc], a.v()));
	rk("*", this.w() + "-dropdown", b)[0] || b[v](this.uj(a.v()));
	return jB.a.I[L](this, a, b)
};
O.createCaption = function (a, b) {
	return b.k("div", "goog-inline-block " + (this.w() + "-caption"), a)
};
O.uj = function (a) {
	return a.k("div", "goog-inline-block " + (this.w() + "-dropdown"), "\u00a0")
};
O.w = function () {
	return "goog-flat-menu-button"
};
ym("goog-flat-menu-button", function () {
	return new Ou(k, k, jB.fa())
});

function kB(a, b) {
	Ol[L](this, b);
	this.Ia = a || ""
}
R(kB, Ol);
kB[G].Tc = k;
var lB = "placeholder" in q[rc]("input");
O = kB[G];
O.Wh = m;
O.k = function () {
	this.e = this.v().k("input", {
		type: "text"
	})
};
O.xb = function (a) {
	kB.a.xb[L](this, a);
	this.Ia || (this.Ia = a[Rd]("label") || "");
	Uk(ok(a)) == a && (this.Wh = j, T(this.b(), this.sh));
	lB ? this.b().placeholder = this.Ia : km(this.b(), "label", this.Ia)
};
O.Z = function () {
	kB.a.Z[L](this);
	var a = new Jl(this);
	a.j(this.b(), "focus", this.cr);
	a.j(this.b(), "blur", this.Tj);
	lB ? this.J = a : (Ri && a.j(this.b(), ["keypress", "keydown", "keyup"], this.cx), a.j(xk(ok(this.b())), "load", this.sx), this.J = a, mB(this));
	this.fe();
	this.b().Vx = this
};
O.Oa = function () {
	kB.a.Oa[L](this);
	this.J && (this.J.s(), this.J = k);
	this.b().Vx = k
};

function mB(a) {
	!a.Rw && (a.J && a.b().form) && (a.J.j(a.b().form, "submit", a.ex), a.Rw = j)
}
O.i = function () {
	kB.a.i[L](this);
	this.J && (this.J.s(), this.J = k)
};
O.sh = "label-input-label";
O.cr = function () {
	this.Wh = j;
	T(this.b(), this.sh);
	if (!lB && !nB(this) && !this.Hx) {
		var a = this,
			b = function () {
				za(a.b(), "")
			};
		U ? Il(b, 10) : b()
	}
};
O.Tj = function () {
	lB || (this.J.pa(this.b(), "click", this.cr), this.Tc = k);
	this.Wh = m;
	this.fe()
};
O.cx = function (a) {
	27 == a[D] && ("keydown" == a[E] ? this.Tc = this.b()[Yb] : "keypress" == a[E] ? za(this.b(), this.Tc) : "keyup" == a[E] && (this.Tc = k), a[Zb]())
};
O.ex = function () {
	nB(this) || (za(this.b(), ""), Il(this.Ww, 10, this))
};
O.Ww = function () {
	nB(this) || za(this.b(), this.Ia)
};
O.sx = function () {
	this.fe()
};

function nB(a) {
	return !!a.b() && "" != a.b()[Yb] && a.b()[Yb] != a.Ia
}
Na(O, function () {
	za(this.b(), "");
	this.Tc != k && (this.Tc = "")
});
mb(O, function () {
	nB(this) && (this[Fc](), this.fe())
});
O.Ta = function (a) {
	this.Tc != k && (this.Tc = a);
	za(this.b(), a);
	this.fe()
};
O.S = function () {
	return this.Tc != k ? this.Tc : nB(this) ? this.b()[Yb] : ""
};
O.fe = function () {
	lB ? this.b().placeholder != this.Ia && (this.b().placeholder = this.Ia) : (mB(this), km(this.b(), "label", this.Ia));
	nB(this) ? T(this.b(), this.sh) : (!this.Hx && !this.Wh && S(this.b(), this.sh), lB || Il(this.Fz, 10, this))
};
O.Ca = function (a) {
	ab(this.b(), !a);
	$h(this.b(), this.sh + "-disabled", !a)
};
O.aa = function () {
	return !this.b()[Bd]
};
O.Fz = function () {
	this.b() && (!nB(this) && !this.Wh) && za(this.b(), this.Ia)
};

function oB(a) {
	this.ia = [];
	pB(this, a)
}
R(oB, Fl);
O = oB[G];
O.fd = k;
O.Sd = k;

function qB(a, b) {
	a.Sd = b
}
O.wf = function () {
	return this.ia[F]
};
O.vf = function (a) {
	return this.ia[a] || k
};

function pB(a, b) {
	b && (Fh(b, function (c) {
		rB(this, c, m)
	}, a), Ph(a.ia, b))
}
O.M = function (a) {
	this.rd(a, this.wf())
};
O.rd = function (a, b) {
	a && (rB(this, a, m), Qh(this.ia, b, 0, a))
};
O.Oe = function (a) {
	a && Lh(this.ia, a) && a == this.fd && (this.fd = k, this[A]("select"))
};
O.Pe = function (a) {
	this.Oe(this.vf(a))
};
O.yg = function () {
	return this.fd
};
O.Qh = function () {
	return Oh(this.ia)
};
O.Lc = function (a) {
	a != this.fd && (rB(this, this.fd, m), this.fd = a, rB(this, a, j));
	this[A]("select")
};
O.Sh = function () {
	return this.fd ? Eh(this.ia, this.fd) : -1
};
O.lh = function (a) {
	this.Lc(this.vf(a))
};
Na(O, function () {
	var a = this.ia;
	if (!Qg(a))
		for (var b = a[F] - 1; 0 <= b; b--) delete a[b];
	Va(a, 0);
	this.fd = k
});
O.i = function () {
	oB.a.i[L](this);
	delete this.ia;
	this.fd = k
};

function rB(a, b, c) {
	b && ("function" == typeof a.Sd ? a.Sd(b, c) : "function" == typeof b.Li && b.Li(c))
}

function sB(a, b, c, d) {
	Ou[L](this, a, b, c, d);
	this.yj = a;
	this.ag();
	this.Ho("listbox")
}
R(sB, Ou);
O = sB[G];
O.ca = k;
O.yj = k;
O.Z = function () {
	sB.a.Z[L](this);
	this.ag();
	tB(this);
	km(this.b(), "haspopup", "false")
};
O.xb = function (a) {
	sB.a.xb[L](this, a);
	(a = this.tf()) ? (this.yj = a, this.ag()) : this.lh(0)
};
O.i = function () {
	sB.a.i[L](this);
	this.ca && (this.ca.s(), this.ca = k);
	this.yj = k
};
O.Hm = function (a) {
	this.Lc(a[K]);
	sB.a.Hm[L](this, a);
	a[wd]();
	this[A]("action")
};
O.ox = function () {
	var a = this.yg();
	sB.a.Ta[L](this, a && a.S());
	this.ag()
};
O.hd = function (a) {
	var b = sB.a.hd[L](this, a);
	a != b && (this.ca && this.ca[Fc](), a && (this.ca ? Tl(a, function (c) {
		uB(this, c);
		this.ca.M(c)
	}, this) : vB(this, a)));
	return b
};
O.M = function (a) {
	uB(this, a);
	sB.a.M[L](this, a);
	this.ca ? this.ca.M(a) : vB(this, this.L())
};
O.rd = function (a, b) {
	uB(this, a);
	sB.a.rd[L](this, a, b);
	this.ca ? this.ca.rd(a, b) : vB(this, this.L())
};
O.Oe = function (a) {
	sB.a.Oe[L](this, a);
	this.ca && this.ca.Oe(a)
};
O.Pe = function (a) {
	sB.a.Pe[L](this, a);
	this.ca && this.ca.Pe(a)
};
O.Lc = function (a) {
	if (this.ca) {
		var b = this.yg();
		this.ca.Lc(a);
		a != b && this[A]("change")
	}
};
O.lh = function (a) {
	this.ca && this.Lc(this.ca.vf(a))
};
O.Ta = function (a) {
	if (a != k && this.ca)
		for (var b = 0, c; c = this.ca.vf(b); b++)
			if (c && "function" == typeof c.S && c.S() == a) {
				this.Lc(c);
				return
			}
	this.Lc(k)
};
O.yg = function () {
	return this.ca ? this.ca.yg() : k
};
O.Sh = function () {
	return this.ca ? this.ca.Sh() : -1
};

function vB(a, b) {
	a.ca = new oB;
	b && Tl(b, function (c) {
		uB(this, c);
		this.ca.M(c)
	}, a);
	tB(a)
}

function tB(a) {
	a.ca && a[fd]().j(a.ca, "select", a.ox)
}
O.ag = function () {
	var a = this.yg();
	this.La(a ? a.tf() : this.yj)
};

function uB(a, b) {
	b.Ho(b instanceof yu ? "option" : "separator")
}
O.Ba = function (a, b) {
	sB.a.Ba[L](this, a, b);
	this.Bb() && ku(this.L(), this.Sh())
};
ym("goog-select", function () {
	return new sB(k)
});

function wB() {
	this.Ml = []
}
R(wB, tu);
Og(wB);
wB[G].k = function (a) {
	var b = wB.a.k[L](this, a);
	S(b, "goog-submenu");
	xB(this, a, b);
	return b
};
wB[G].I = function (a, b) {
	b = wB.a.I[L](this, a, b);
	S(b, "goog-submenu");
	xB(this, a, b);
	var c = rk("div", "goog-menu", b);
	if (c[F]) {
		var d = new Bu(a.v()),
			c = c[0];
		xl(c, m);
		Vk(a.v())[J][v](c);
		d.I(c);
		a.hd(d, j)
	}
	return b
};
wB[G].La = function (a, b) {
	var c = this.O(a),
		d = c && c[Ld];
	wB.a.La[L](this, a, b);
	d && (c[Ld] != d && Zh(d, "goog-submenu-arrow")) && c[v](d)
};
wB[G].Ae = function (a) {
	wB.a.Ae[L](this, a);
	var b = a.O(),
		c = a.v(),
		c = sk(c.V, "span", "goog-submenu-arrow", b)[0];
	yB(a, c);
	c != b[Ld] && b[v](c);
	km(a.b(), "haspopup", "true")
};

function xB(a, b, c) {
	var d = b.v().k("span");
	Ya(d, "goog-submenu-arrow");
	yB(b, d);
	a.O(c)[v](d)
}

function yB(a, b) {
	a.Fe() ? (S(b, "goog-submenu-arrow-rtl"), Lk(b, a.ij ? "\u25c4" : "\u25ba")) : (T(b, "goog-submenu-arrow-rtl"), Lk(b, a.ij ? "\u25ba" : "\u25c4"))
}

function zB(a, b, c, d) {
	yu[L](this, a, b, c, d || wB.fa())
}
R(zB, yu);
O = zB[G];
O.Wb = k;
O.Ro = k;
O.nr = m;
O.Ua = k;
O.Ij = m;
O.ij = j;
O.Px = m;
O.Z = function () {
	zB.a.Z[L](this);
	this[fd]().j(this[vb](), "hide", this.dt);
	this.Ua && AB(this, this.Ua, j)
};
O.Oa = function () {
	this[fd]().pa(this[vb](), "hide", this.dt);
	this.Ua && (AB(this, this.Ua, m), this.Ij || (this.Ua.Oa(), Hk(this.Ua.b())));
	zB.a.Oa[L](this)
};
O.i = function () {
	this.Ua && !this.Ij && this.Ua.s();
	this.Ua = k;
	zB.a.i[L](this)
};
O.Ob = function (a, b) {
	zB.a.Ob[L](this, a);
	b && (this.L().ad = j);
	a || (this.Wb && Hl[Db](this.Wb), this.Wb = Il(this.zd, 350, this))
};
O.Qo = function () {
	var a = this[vb]();
	a && lu(a) == this && (BB(this, j), CB(this), this.jC = m)
};
O.zd = function () {
	var a = this.Ua;
	a && a[vb]() == this && (BB(this, m), Tl(a, function (b) {
		"function" == typeof b.zd && b.zd()
	}))
};

function DB(a) {
	a.Wb && Hl[Db](a.Wb);
	a.Ro && Hl[Db](a.Ro)
}
O.D = function (a, b) {
	var c = zB.a.D[L](this, a, b);
	c && !this.F() && this.zd();
	return c
};

function CB(a) {
	Tl(a[vb](), function (b) {
		b != this && "function" == typeof b.zd && (b.zd(), DB(b))
	}, a)
}
O.Jb = function (a) {
	var b = a[D],
		c = this.Fe() ? 37 : 39,
		d = this.Fe() ? 39 : 37;
	if (this.nr) {
		if (!this.L().Jb(a))
			if (b == d) this.zd();
			else return m
	} else if (this.aa() && (b == c || b == this.Rj())) this.Qo(), mu(this.L()), DB(this);
	else return m;
	a[Zb]();
	return j
};
O.Fy = function () {
	this.Ua[vb]() == this && (DB(this), this.Zg.Ob(this), CB(this))
};
O.dt = function (a) {
	a[K] == this.Zg && (this.zd(), DB(this))
};
O.ye = function (a) {
	this.aa() && (DB(this), this.Ro = Il(this.Qo, 350, this));
	zB.a.ye[L](this, a)
};
O.Pd = function (a) {
	DB(this);
	if (this.Da & 8) return zB.a.Pd[L](this, a);
	this.Qo();
	return j
};

function BB(a, b) {
	a[A](Ql(64, b));
	var c = a.L();
	if (b != c.F() && (b && (c.P || c.oa(), ku(c, -1)), a.nr = b, $h(a.b(), "goog-submenu-open", b), c.D(b), b)) {
		var c = new Iu(a.b(), a.ij ? 6 : 4, a.Px),
			d = a.L(),
			e = d.b();
		d.F() || (Ra(e[I], "hidden"), xl(e, j));
		c.Ja(e, a.ij ? 4 : 6);
		d.F() || (xl(e, m), Ra(e[I], "visible"))
	}
}

function AB(a, b, c) {
	var d = a[fd]();
	(c ? d.j : d.pa)[L](d, b, "highlight", a.Fy)
}
O.M = function (a) {
	this.L().Ea(a, j)
};
O.rd = function (a, b) {
	this.L().ig(a, b, j)
};
O.Oe = function (a) {
	(a = this.L()[Hd](a, j)) && a.s()
};
O.Pe = function (a) {
	(a = Xl(this.L(), a, j)) && a.s()
};
O.vf = function (a) {
	return Vl(this.L(), a)
};
O.wf = function () {
	return Ul(this.L())
};
O.Qh = function () {
	return this.L().Qh()
};
O.L = function () {
	this.Ua ? this.Ij && this.Ua[vb]() != this && this.Ua.Te(this) : this.hd(new Bu(this.v()), j);
	this.Ua.b() || this.Ua.k();
	return this.Ua
};
O.hd = function (a, b) {
	var c = this.Ua;
	a != c && (c && (this.zd(), this.P && AB(this, c, m)), this.Ua = a, this.Ij = !b, a && (a.Te(this), a.D(m, j), a.uh = m, a.gd(m), this.P && AB(this, a, j)))
};
O.Qc = function (a) {
	return this.L().Qc(a)
};
ym("goog-submenu", function () {
	return new zB(k)
});
var EB = "/ui/";
Jg.HtmlUtil_setServerBase = function (a) {
	EB = a
};
var FB, GB, HB;

function IB(a, b) {
	var c;
	if (a) {
		c = kl(a);
		var d = tl(a);
		c.y += d[M]
	} else c = new ek(0, 0);
	d = 357 < d[x] ? d[x] : 357;
	b && (c.x += b[ic] - b[Uc], c.y += b[jc] - b[Vc]);
	c.x + 363 > ka[x] && (c.x = ka[x] - 363);
	c.y + 600 > ka[M] && (c.y = ka[M] - 600);
	return new Zk(c.x, c.y, d, 554)
}

function JB(a, b, c, d) {
	var e, g;
	b ? (g = pk(b), e = g[Rd]("id")) : e = k;
	b = !Si && g ? xk(ok(g)) || n : n;
	c = IB(g, c);
	c = "toolbar=no,location=no,menubar=no,scrollbars=no,resizable=yes,status=no,width=" + c[x] + ",height=" + c[M] + ",top=" + c.top + ",left=" + c[B];
	a = KB(a, e, d);
	if (!FB || FB.closed) FB = b[xb](a[bd](), "_chooser", c);
	FB[qc]()
}

function KB(a, b, c) {
	a = Zw(a, new Lw("widgets/ContactChooser"));
	b && bx(a, "inputId", b);
	c && (c.serviceName && bx(a, "service", c.serviceName), c.hl && bx(a, "hl", c.hl), c.tempTitle && bx(a, "tempTitle", c.tempTitle));
	return a
}

function LB() {
	Hk(HB);
	GB = HB = k
}
Kg("goog.focus.ChooserLauncher.popChooser", function (a, b, c) {
	var d = new Lw(EB[z](/ui\/?$/, ""));
	JB(d, a, b, c)
}, i);
Kg("goog.focus.ChooserLauncher.popIframe", function (a, b, c) {
	GB && LB();
	var d = new Lw(EB[z](/ui\/?$/, ""));
	b = IB(pk(a), k);
	a = KB(d, a, c);
	n.iframeDone = LB;
	bx(a, "done", "iframeDone");
	c = pk("chooser-iframe-div");
	c == k && (c = yk("div", {
		id: "chooser-iframe-div",
		style: "position: absolute; background-color; #FFF",
		zIndex: 10
	}), q[J][v](c), u(c, '<iframe id="chooser-iframe" style="display:none;background-color; #FFF; border: 0"></iframe>'));
	d = pk("chooser-iframe");
	ob(d[I], "block");
	ql(c, b[B], b.top);
	rl(d, b[x], b[M]);
	d.src = a;
	HB = c;
	GB =
		d
}, i);
var MB, NB, OB;

function PB(a, b) {
	var c = 307,
		d;
	U && (c += 5);
	if (a) {
		d = kl(a);
		var e = tl(a);
		d.y += e[M]
	} else d = new ek(0, 0);
	c = e[x] > c ? e[x] : c;
	b && (d.x += b[ic] - b[Uc], d.y += b[jc] - b[Vc]);
	d.x + 313 > ka[x] && (d.x = ka[x] - 313);
	d.y + 600 > ka[M] && (d.y = ka[M] - 600);
	return new Zk(d.x, d.y, c, 554)
}

function QB(a, b, c, d) {
	var e, g;
	b ? (g = pk(b), e = g[Rd]("id")) : e = k;
	b = !Si && g ? xk(ok(g)) || n : n;
	c = PB(g, c);
	g = "toolbar=no,location=no,menubar=no,scrollbars=no,resizable=yes,status=no,width=" + c[x] + ",height=" + c[M] + ",top=" + c.top + ",left=" + c[B];
	a = RB(a, e, d);
	bx(a, "width", c[x]);
	bx(a, "height", c[M]);
	if (!MB || MB.closed) MB = b[xb](a[bd](), "_picker", g);
	MB[qc]()
}

function RB(a, b, c) {
	a = Zw(a, new Lw("ui/ContactPicker"));
	b && bx(a, "inputId", b);
	c && (c.serviceName && bx(a, "service", c.serviceName), c.hl && bx(a, "hl", c.hl));
	return a
}

function SB() {
	Hk(OB);
	NB = OB = k
}
Kg("goog.focus.PickerLauncher.popPicker", function (a, b) {
	var c = new Lw(EB[z](/ui\/?$/, ""));
	QB(c, a, b)
}, i);
Kg("goog.focus.PickerLauncher.popIframe", function (a, b, c) {
	NB && SB();
	var d = new Lw(EB[z](/ui\/?$/, ""));
	b = PB(pk(a), k);
	a = RB(d, a, c);
	n.iframeDone = SB;
	bx(a, "done", "iframeDone");
	c = pk("PICKER_IFRAME_DIV_ID");
	c == k && (c = yk("div", {
		id: "PICKER_IFRAME_DIV_ID",
		style: "position: absolute; background-color; #FFF",
		zIndex: 10
	}), q[J][v](c), u(c, '<iframe id="PICKER_IFRAME_ID" style="display: none; background-color; #FFF; border: 0"></iframe>'));
	d = pk("PICKER_IFRAME_ID");
	ob(d[I], "block");
	ql(c, b[B], b.top);
	rl(d, b[x], b[M]);
	d.src =
		a;
	OB = c;
	NB = d
}, i);

function TB(a, b) {
	this.WB = [];
	this.Hi = Sg(a) ? new Lw(a) : a;
	"/" != this.Hi.Od[Tb](0) && f(p());
	this.zo = b;
	this.Nl = {};
	this.bk = k;
	this.gg = {};
	this.Qn = {};
	this.ck = {};
	this.Oj = k
}
TB[G].Wz = function (a) {
	this.ok = a
};

function UB(a) {
	this.jz = a;
	this.xi = new Di;
	this.Cd = k
}
UB[G].Ko = function (a) {
	this.Cd && this.Cd.setTarget(a)
};
O = TB[G];
O.ak = function (a) {
	this.yq && f(p("Email autcomplete was already initialized. To attach it to an input field, please use attachAutocomplete()"));
	this.yq = j;
	this.Nl = a || {
		ac2: j
	};
	var b = this;
	VB(WB(this), function (c) {
		if (c = (c[Pc] || c[le][Jc])._EmailAc_create) {
			b.bk = c;
			for (var d in b.gg) XB(b, b.gg[d]);
			b.Oj && (c = Wg(b.Oj), (c = b.ck[c]) && c.Ko(b.Oj));
			for (d in b.gg) {
				c = b.gg[d];
				c = c.xi.ub();
				for (var e = 1; e < c[F]; e++) Mj(c[e], "focus", b.Vn, m, b)
			}
		}
	})
};

function XB(a, b) {
	if (a.bk) {
		var c = b.jz;
		c.serverBase = a.Hi;
		c.onComplete = P(a.Gy, a);
		for (var d in a.Nl) c[d] = a.Nl[d];
		d = b.xi.ub();
		b.Cd = a.bk(d[0], c);
		for (c = 1; c < d[F]; c++) b.Cd.addInput(d[c]);
		b.xi[Fc]()
	}
}
O.lj = function (a, b, c) {
	a = pk(a);
	var d = b || {};
	b = Wg(a);
	this.Qn[b] = c;
	c = "";
	for (var e in d) c += e + "=" + d[e] + ";";
	e = this.gg[c];
	e || (e = new UB(d), this.gg[c] = e);
	d = e;
	c = a;
	d.Cd ? d.Cd.addInput(c) : d.xi.add(c);
	this.ck[b] = e;
	e.Cd || (this.bk ? XB(this, e) : V(a, "focus", this.Vn, m, this))
};
O.Vn = function (a) {
	this.Oj = a[K];
	this.yq || this.ak()
};
O.Gy = function (a) {
	var b = this.Qn[Wg(a)];
	b && b(a)
};
O.dw = function (a) {
	a = pk(a);
	Mj(a, "focus", this.Vn, m, this);
	var b = Wg(a);
	delete this.Qn[b];
	var c = this.ck[b];
	if (c) {
		if (c.Cd) c.Cd.removeInput(a);
		else c.xi[pc](a);
		delete this.ck[b]
	}
};
O.Bv = function (a, b) {
	this.ak(b);
	this.lj(a, b)
};
O.Av = function (a) {
	this.lj(a)
};
O.Zx = function (a, b) {
	QB(this.Hi, a, b, {
		serviceName: this.zo,
		hl: this.ok
	})
};
O.Yx = function (a, b) {
	JB(this.Hi, a, b, {
		serviceName: this.zo,
		hl: this.ok
	})
};

function WB(a) {
	if (!a.xq) {
		var b = Zw(a.Hi, new Lw("ui/EmailAc2"));
		bx(b, "service", a.zo);
		a.ok && bx(b, "hl", a.ok);
		a.xq = new YB(b[bd]())
	}
	return a.xq
}
Kg("goog.ContactTools", TB, i);
TB[G].setLocale = TB[G].Wz;
TB[G].attachAutocompleteTo = TB[G].Bv;
TB[G].attachAutocompleteAlsoTo = TB[G].Av;
TB[G].initAutocomplete = TB[G].ak;
TB[G].attachAutocomplete = TB[G].lj;
TB[G].detachAutocomplete = TB[G].dw;
TB[G].launchPicker = TB[G].Zx;
TB[G].launchChooser = TB[G].Yx;

function YB(a) {
	this.pj = [];
	var b = yk("iframe");
	b.src = 'javascript:""';
	var c = b[I];
	Ra(c, "hidden");
	xa(c, pb(c, "10px"));
	!Si || ej("500") ? (Xa(c, "absolute"), c.top = Ca(c, "-9999px")) : c.marginTop = c.marginLeft = "-99px";
	this.Mf = b;
	q[J][v](this.Mf);
	U ? V(this.Mf, "readystatechange", this.Oy, m, this) : V(this.Mf, "load", this.Ys, m, this);
	n.shareapi && n.shareapi.rewriteUrl && (a = n.shareapi.rewriteUrl(a));
	this.Mf.src = a
}

function VB(a, b) {
	a.Yc ? b(a.Yc) : a.pj[w](b)
}
YB[G].Oy = function () {
	"complete" == this.Mf.readyState && this.Ys()
};
YB[G].Ys = function () {
	this.Yc = this.Mf;
	delete this.Mf;
	for (var a = 0; this.pj[a]; ++a) this.pj[a](this.Yc);
	delete this.pj
};

function ZB(a, b) {
	var c = Q($B, a, b);
	a.P ? c() : Lj(a, "aftershow", c);
	var d = k;
	V(a, "aftershow", function () {
		a.am && (d = new aC(a))
	});
	V(a, "afterhide", function () {
		wj(d)
	})
}

function $B(a, b) {
	Ey(a, 0.75);
	var c = a.Xa;
	c && (c = Ky(c, b)) && S(c, "goog-buttonset-action")
}

function aC(a) {
	jy[L](this, a.b());
	this.cb = a;
	V(this, "start", this.Zz, m, this)
}
R(aC, jy);
aC[G].Zz = function (a) {
	a = a.Jv;
	if (this.cb.am && Zh(a[K], this.cb.w())) {
		var b = tl(this.cb.b()),
			b = new Yk(0, b[x], b[M], 0),
			c = Cl(this.cb.b(), "padding");
		b.expand(-1 * c.top, -1 * c[Ce], -1 * c[Zd], -1 * c[B]);
		return !b[ge](new ek(a.offsetX, a.offsetY))
	}
	return m
};
var bC = new gk(0, 0),
	cC = new gk(1060, 590),
	dC = new gk(1252, 640);

function eC(a, b, c) {
	sB[L](this, a, b, jB.fa(), c);
	this.Bk = new fC(1E3)
}
R(eC, sB);
eC[G].k = function () {
	eC.a.k[L](this);
	S(this.b(), "jfk-select")
};
eC[G].zk = function () {
	if (this.L().P) {
		var a = this.b(),
			b = ol(a),
			c = Ru(this) ? 4 : 6,
			d = this.L().b();
		this.L().F() || (Ra(d[I], "hidden"), xl(d, j));
		Tu(this) && (d[I].overflowY = "visible", pb(d[I], "auto"));
		var e = s.max(this.Sh(), 0),
			e = Vl(this.L(), e),
			g = b.y - (e ? e.b()[ue] : 0),
			h = jl(a);
		h && s.min(s.max(b.y, h.top), h[Zd]) == b.y && (h = jl(d), g = s.min(s.max(g, h.top + 2), h[Zd] - 2));
		Du(a, c, d, Ru(this) ? 4 : 6, new ek(0, g - b.y), k, 65 | (Tu(this) ? 32 : 132), k);
		Tu(this) && (d[I].overflowY = "auto", a = d[Zc] + (ol(e.b()).y - ol(this.b()).y), Sa(d, a));
		this.L().F() || (xl(d,
			m), Ra(d[I], "visible"))
	}
};
eC[G].ic = function (a) {
	var b = eC.a.ic[L](this, a);
	return "key" != a[E] || !this.L() ? b : !this.Bb() && 32 == a[D] ? (this.Bk.It(), b) : b ? (this.Bb() && (38 == a[D] || 40 == a[D]) && gC(this), j) : hm(a[D]) ? (b = Xx[a[D]], 32 == a[D] && (b = " "), this.Bk.add(b), a = this.Bk.Dh, this.Bk.wj ? hC(this, b, m) : hC(this, a, 1 < a[F]), j) : m
};

function gC(a) {
	var b = lu(a.L());
	b && (a = a.L().O(), b = ml(b.b(), a, i), gb(a, b.x), Sa(a, b.y))
}

function hC(a, b, c) {
	var d = a.Bb() ? a.L().Zb : a.Sh();
	b = va("^" + Bh(b), "i");
	c || ++d;
	for (var d = 0 > d ? 0 : d, e = a.L(), g = 0, h = Ul(e); g < h; ++g) {
		c = (d + g) % h;
		var l = Vl(e, c),
			r = l.tf();
		if (l.aa() && r && b[yb](r)) {
			b = c;
			a.Bb() ? (ku(a.L(), b), gC(a)) : a.lh(b);
			break
		}
	}
}

function fC(a) {
	this.bw = new wz(this.It, a, this)
}
fC[G].add = function (a) {
	a == this.Dh ? this.wj = j : this.wj || (this.Dh += a);
	this.bw[Qd]()
};
fC[G].It = function () {
	this.Dh = "";
	this.wj = m
};
fC[G].wj = m;
fC[G].Dh = "";

function iC(a, b, c) {
	var d = c || Jg,
		e = a.serverUri || "//www.google.com/tools/feedback",
		g = d.GOOGLE_FEEDBACK_START;
	/iphone|ipad|ipod|android|blackberry|mini|windows\sce|windows\sphone|palm/i [yb](navigator.userAgent) && (a.mobileWindow = n[xb](""));
	d.GOOGLE_FEEDBACK_START_ARGUMENTS = arguments;
	if (g) g[he](d, arguments);
	else d = d[rd], g = d[rc]("script"), g.src = e + "/load.js", d[J][v](g)
}

function jC(a) {
	this.mB = a;
	this.mi = j;
	this.$e = [];
	this.Ez = k
}

function kC(a, b, c, d) {
	if (b instanceof wa) {
		a = 0;
		for (var e; e = b[a]; a++) d[w]([c, e])
	} else d[w]([c, b])
}
O = jC[G];
O.fb = function () {
	return []
};
O.exec = function (a, b) {
	if (this.mi) {
		var c = this.Ac();
		c && br(c, Ur, i, i)
	}
	var d = this;
	this.sg = this.Ez || new Zq;
	hr(this.sg, function () {
		if (d.mi) {
			var g = d.xc();
			g && br(g, cr, d.Uq(), i)
		}
		if (g = d.Gd())
			for (var h = 0; h < g[F]; h++) g[h] && g[h][Ic]();
		d.yi();
		a && a()
	});
	ir(this.sg, function () {
		if (d.mi) {
			var g = d.Am();
			g && br(g, er, 7, d.sg[Eb])
		}
		b && b()
	});
	this.$n();
	this.sg.wi = m;
	c = this.mB;
	this.$e[F] && (c += "?" + Mn(this.$e));
	var e = Mn(this.fb());
	this.sg.Ic(c, e)
};
O.Ac = function () {
	return k
};
O.xc = function () {
	return k
};
O.Uq = function () {
	return 7
};
O.Am = function () {
	return 1045 == this.sg.Th() ? "Oops...an error occurred. Please try again in a few hours." : "Oops...an error occurred. Please try again in a few seconds."
};
O.Gd = function () {
	return k
};
O.Mr = function () {
	return m
};
O.$n = function () {};
O.yi = function () {};

function lC(a, b, c) {
	function d(e) {
		for (var g = 0; g < e[F]; g++)!(e[g] instanceof up) && e[g] && (e[g] = Hp(Z, e[g]));
		return e
	}
	jC[L](this, a);
	this.hj = d(b || []);
	this.eo = d(c || [])
}
R(lC, jC);

function mC(a) {
	wr && Ih(a.hj, function (b) {
		return wr.hb(Ao(b)) == k && (b[E] == lf || "state" == b[E] && b.W(Yo(Z)) ? j : m)
	}) && wr[Ic]()
}
lC[G].fb = function () {
	for (var a = [], b = this.hj, c = 0, d; d = b[c]; c++) a[w](["a", ko(d)]);
	b = this.eo;
	for (c = 0; d = b[c]; c++) a[w](["r", ko(d)]);
	this.Mr() && a[w](["async", "true"]);
	return a
};

function nC(a, b, c, d, e, g) {
	lC[L](this, a, e, g);
	this.bb = b;
	this.h = d;
	this.Lb = c
}
R(nC, lC);
nC[G].fb = function () {
	var a = nC.a.fb[L](this);
	kC(this, this.bb, "s", a);
	this.Lb && kC(this, this.Lb, "ac", a);
	this.h && a[w](["t", this.h]);
	return a
};

function oC(a, b, c, d, e) {
	lC[L](this, a, d, e);
	this.bb = b;
	this.Tx = c
}
R(oC, lC);
oC[G].fb = function () {
	var a = oC.a.fb[L](this);
	kC(this, this.bb, "s", a);
	kC(this, this.Tx, "i", a);
	return a
};

function Js(a, b, c, d, e) {
	oC[L](this, Le, a, b, c, d);
	this.We = e
}
R(Js, oC);
Js[G].yi = function () {
	mC(this)
};
Js[G].Mr = function () {
	return j
};
Js[G].fb = function () {
	var a = Js.a.fb[L](this);
	Lg(this.We) && a[w](["ts", this.We]);
	return a
};

function Us(a, b, c) {
	nC[L](this, Qe, a, i, b);
	c && (this.Rg = c)
}
R(Us, nC);
Us[G].Ac = function () {
	return this.Rg && 0 != this.Rg.nd ? zn("Marking all items older than &quot;%1&quot; in &quot;%2&quot; as read...", [this.Rg.bd, ph(this.h)]) : zn("Marking all items in &quot;%1&quot; as read...", ph(this.h))
};
Us[G].xc = function () {
	return this.Rg && 0 != this.Rg.nd ? zn("Marked all items older than &quot;%1&quot; in &quot;%2&quot; as read.", [this.Rg.bd, ph(this.h)]) : zn("Marked all items in &quot;%1&quot; as read.", ph(this.h))
};
Us[G].fb = function () {
	var a = Us.a.fb[L](this);
	this.zs && a[w](["ts", this.zs]);
	return a
};
Us[G].Gd = function () {
	return [xr]
};

function ot(a, b, c, d) {
	nC[L](this, Pe, a, "subscribe", b, c, d)
}
R(ot, nC);
ot[G].Ac = function () {
	return zn("Subscribing to &quot;%1&quot;...", ph(this.h))
};
ot[G].xc = function () {
	return zn("You have subscribed to %1.", ph(this.h))
};
ot[G].yi = function () {
	mC(this)
};
ot[G].Gd = function () {
	return [xr, op]
};

function pC() {}
pC[G].cd = function (a, b) {
	a && (a[wd](), a[Zb]());
	b = lh(b);
	if (!ih(b)) {
		Cr();
		var c = new Zq,
			d = P(this.zt, this);
		c.Dd = d;
		d = P(this.vz, this, b);
		c.hm = d;
		c.Ic("/api/0/subscription/quickadd", Mn([
			["quickadd", b]
		]))
	}
};
pC[G].zt = function () {
	fr();
	br("Oops...an error occurred. Please try again in a few seconds.", er, i, i)
};
pC[G].vz = function (a, b) {
	fr();
	var c = hq(b[Eb]);
	if (!c[jd] || c[jd] != a) this.zt();
	else if (1 == c.numResults) c = Bo(c[C]), qC(this, c);
	else(new rC(a))[vc]()
};

function qC(a, b) {
	Lj(Mv.Hj, "refresh", function () {
		$.xg[w](sC(a, b));
		fq(b)
	});
	op[Ic]();
	xr[Ic]()
}

function sC() {
	function a() {
		ox($, a);
		tC($)
	}
	return a
}
var Hv = k;
Pq(function () {
	return !Hv || !Hv.na ? k : Hv.Of
}, function () {
	Hv.$()
});

function Iv() {
	this.Of = qk("quick-add-bubble-holder");
	this.na = m;
	V(qk("quick-add-btn"), "click", this.cd, m, this);
	var a = qk("quick-add-btn"),
		b = P(this.cd, this);
	Qq(13, a, b, i);
	V(qk("quick-add-form"), "submit", this.cd, m, this);
	V(qk("quick-add-close"), "click", this.$, m, this);
	a = qk("quickadd");
	Qq(27, a, P(this.$, this))
}
R(Iv, pC);

function Pv() {
	Hv || (Hv = new Iv);
	Hv.kb()
}
Ta(Iv[G], function () {
	this.na ? this.$() : this.kb()
});
Iv[G].kb = function () {
	var a = qk("quickadd");
	za(a, "");
	var b = qk("lhn-add-subscription"),
		c = vl(b);
	0 == c[x] ? (b = vl(qk("chrome-lhn-menu")), Ca(this.Of[I], b[B] + "px"), this.Of[I].top = b.top + "px") : (Ca(this.Of[I], c[B] + "px"), this.Of[I].top = c.top + c[M] + "px", ov(b, j));
	T(this.Of, "hidden");
	this.na = j;
	b = qk("quick-add-btn");
	c = qk("quick-add-form");
	xa(a[I], "");
	var c = vl(c),
		d = vl(a),
		b = vl(b);
	xa(a[I], c[x] - (b[x] + (b[B] - c[B] - d[x])) - 2 - 1 - 4 - 1 + "px");
	n[qd](function () {
		a[qc]()
	}, 0)
};
Iv[G].$ = function () {
	qk("quickadd")[Ub]();
	S(this.Of, "hidden");
	this.na = m;
	ov(qk("lhn-add-subscription"), m)
};
Iv[G].cd = function (a) {
	this.$();
	var b = qk("quickadd")[Yb];
	Iv.a.cd[L](this, a, b)
};

function uC(a) {
	this.Hb = a;
	this.$();
	this.vo = this.wt = "";
	this.na = m
}
uC[G].$ = function () {
	this.ud && Hk(this.ud);
	this.Fd && Hk(this.Fd);
	this.Fd = this.ud = k;
	this.na = this.Tr = m
};
uC[G].ta = function () {
	this.Tr || (this.Tr = j, this.ud = vC(), S(this.ud, "banner-background", this.Hb), q[J][v](this.ud), this.Fd = vC(), S(this.Fd, "banner-foreground", this.Hb), q[J][v](this.Fd))
};
uC[G].kb = function () {
	this.ta();
	wC(this);
	Jn(this.ud, j);
	Jn(this.Fd, j);
	this.na = j
};

function xC(a, b) {
	a.wt = b;
	wC(a)
}

function yC(a, b) {
	a.vo = b;
	wC(a)
}

function wC(a) {
	a.ta();
	zC(a, a.ud);
	zC(a, a.Fd)
}

function zC(a, b) {
	u(Y(b, "primary-message", "div"), a.wt || "");
	var c = Y(b, "secondary-message", "div");
	a.vo ? (u(c, a.vo), T(c, "hidden")) : S(c, "hidden")
}
uC[G].F = function () {
	return this.na
};
var AC, BC, CC, DC = k;

function EC(a) {
	AC = a
}

function FC(a) {
	BC = a
}

function fq(a, b, c, d) {
	DC = a;
	a.K.wv || b || !a.$b() ? Qs(a, function (e) {
		e = c || !e && !dp(a) || CC && CC(a);
		var g = a.ek() && !Xo(a, fp(Z));
		GC(a, function (h) {
			HC(h, d)
		}, e, g)
	}) : HC(a, d)
}

function HC(a, b) {
	if (0 < a.of[F]) {
		var c = s[Gb](Ln() / 1E3) - 2592E3;
		c % 3600 && (c -= c % 3600);
		if (op) {
			var d = op.hb(a);
			d && (c = s.max(s[Nb](d.Pw / 1E3), c))
		}
		a.Pn = c
	}
	a.ys = b == j;
	eq(a);
	AC(a)
}

function GC(a, b, c, d) {
	if (ua) {
		var e = Jo(a) ? new bo(a.gb(), a.Tf) : a instanceof cp ? new cp(a[C], a[Rc], a[id]) : a instanceof mp ? new mp(a[C], a[id]) : a instanceof Ho ? new Ho(a[C], a[id]) : a instanceof Co ? new Co(a[C], a[id], a.cm) : Bo(a[C]);
		BC(a, function (g) {
			e.Io(g.iz);
			Ot(function (h) {
				e.of = [];
				h || c ? e.Pn = k : (h = Fp(Z), e.of[w](h));
				d && (h = fp(Z), e.of[w](h));
				b(e)
			})
		})
	} else b(a)
}
var IC = [];

function JC() {
	IC[w](this)
}

function eq(a) {
	for (var b = 0, c; c = IC[b]; b++) c.rh(a)
}

function KC() {
	IC[w](this)
}
R(KC, JC);

function vv(a, b, c) {
	IC[w](this);
	this.pt = X(a);
	this.d = b;
	a = this.pt[Tc]("a")[0];
	jb(a, So(b, c));
	V(a, "click", this.Ag, m, this)
}
R(vv, KC);
vv[G].Ag = function (a) {
	a[Zb]();
	this[vc]()
};
Ja(vv[G], function () {
	fq(this.d)
});
vv[G].rh = function (a) {
	a = a != k && a.W(this.d);
	$h(this.pt, "selected", a)
};
vv[G].g = function () {
	return this.d
};
var mx = k;

function LC(a, b, c) {
	IC[w](this);
	this.Om = (this.Q = a) && X(a) != k;
	this.hz = b;
	this.gt = c;
	this.Om && (this.B = X(a), MC(this, Y(this.B, "link")))
}
R(LC, JC);

function MC(a, b, c) {
	Qj(b, "click");
	V(b, "click", function (d) {
		a.Ag(d);
		c && c()
	});
	"a" == b[je][Be]() && a.ze && jb(b, "#" + a.ze + "-page")
}
O = LC[G];
O.rh = function () {
	this.Sf && this.Sf[od]();
	this.Om && T(this.B, "selected");
	this.xo = m;
	mx = k;
	this.qg()
};
O.Ag = function (a) {
	a[Zb]();
	this[vc]()
};
O.dn = function () {
	return this.xo
};
Ja(O, function () {
	if (!this.xo) {
		DC = k;
		for (var a = 0, b; b = IC[a]; a++) b != this && b.rh(k);
		this.Om && S(this.B, "selected");
		this.xo = j;
		mx = this
	}
	this[Ic]()
});
O.qg = function () {};
Oa(O, function () {
	var a = this;
	this.Sf = new Zq;
	hr(this.Sf, function () {
		fr();
		var b = Ck("div", "viewer-page");
		u(b, a.Sf[Eb]);
		a.gt(b);
		a.Sf = k
	});
	ir(this.Sf, P(this.Xy, this));
	Cr();
	this.Sf.ma(this.hz)
});
O.Xy = function () {
	fr();
	br("Oops...an error occurred. Please try again in a few seconds.", er, i, i);
	var a = sn("<div class='error-page'><div>Oops...an error occurred. Please try again in a few seconds.</div></div>");
	NC(a, "An error has occurred")
};

function OC(a, b, c, d) {
	Wa(this, c);
	var e = this;
	LC[L](this, a, b, function (g) {
		e.gz = g;
		NC(g, c);
		za(PC(), "");
		QC && QC.lh(0);
		d(g)
	})
}
R(OC, LC);

function RC(a, b) {
	for (var c = a.gz[Tc]("script"), d = 0, e; e = c[d]; d++) eval(e[Qb]);
	return eval(b)
}
OC[G].qg = function () {
	$.va = m;
	OC.a.qg()
};

function SC(a, b, c) {
	OC[L](this, c, "ignored", a, b)
}
R(SC, OC);
Oa(SC[G], function () {
	this.gt(sn('<div class="client-side-page"><div id="sections-header"><div class=\'contents\'><div class="lhn-nav-button-container"></div><div class="overview-section-header">' + W(this[id]) + "</div><div class=\"settings-button-container\"></div><div class='clear'></div></div></div></div>"))
});

function TC(a) {
	this.Q = a[G].ze + "-page";
	this.fz = a
}
R(TC, aq);
TC[G].Ci = function () {
	(new this.fz)[vc]()
};
var UC = k;

function VC() {
	UC == k ? WC() : UC.F() || n[qd](function () {
		UC.kb();
		var a = UC.Fd;
		nb(Y(a, "open-new-window-link"), XC);
		nb(Y(a, "close-help-link"), YC);
		var b = Y(a, "secondary-message"),
			c = vl(b),
			d = c.top,
			c = d + c[M],
			e = wk(n)[M];
		e < c && (a = vl(a), d = e - (d + (a.top + a[M] - c)), a = Y(UC.ud, "secondary-message"), pb(a[I], pb(b[I], d + "px")), S(b, "resized"), S(a, "resized"))
	}, 0)
}

function YC() {
	var a = UC;
	a && a.F() && a.$()
}

function WC() {
	UC = new uC("keyboard-help-banner");
	xC(UC, "Keyboard shortcuts");
	var a = new Zq;
	hr(a, function () {
		yC(UC, a[Eb]);
		VC()
	});
	a.ma("/ui/2662170544-en-keyboard-help-banner?hl=en")
}

function XC() {
	YC();
	Wv("/ui/4269787364-en-keyboard-help-tearoff?hl=en", {
		target: "readerkeyboardshortcuts",
		width: 780,
		height: 550,
		toolbar: m,
		scrollbars: j,
		resizable: m,
		menubar: m
	})
}
Pq(function () {
	var a = UC;
	return a && a.F() ? [a.ud, a.Fd] : k
}, YC);

function zv() {
	this.No = m;
	var a = this;
	OC[L](this, "overview-selector", Ye, "Home", function (b) {
		a.Bo(b);
		$p.hv[zd]()
	})
}
R(zv, OC);
zv[G].ze = "overview";
zv[G].Bo = function (a) {
	function b(t) {
		var y = Bo(t.id[be](9));
		Wr(t, y, Q(mr, Uf), j);
		cb(t, "_blank")
	}

	function c(t, y) {
		var H = X(t);
		H && Wr(H[Tc]("a")[0], y, k, j)
	}
	var d = tn(a),
		e = d["sub-link"];
	a = d["label-link"];
	var d = d["overview-item-link"],
		g = X("overview-directory-link"),
		h = X("subscribe-bookmarklet");
	if (e)
		for (var l = 0, r; r = e[l]; l++) b(r);
	if (a)
		for (l = 0; e = a[l]; l++) b(e);
	if (d)
		for (l = 0; a = d[l]; l++) V(a, "click", P(this.fx, this, a));
	g && Tv(Cv, g, 0);
	h && hs(h);
	c("recent-activity-star", Ao(Yo(Z)));
	c("recent-activity-read", Ao(Fp(Z)));
	c("recent-activity-kept-unread",
		Ao(Gp(Z)));
	(a = X("keyboard-shortcuts-banner-tip-link")) && nb(a, function () {
		XC();
		return m
	});
	this.No && (this.No = m, mr("startup-to-overview", 1E3 * (Ln() - _START_TIME)))
};
zv[G].fx = function (a) {
	var b = a.id;
	if (b) {
		var c;
		for (a = a[oe]; a; a = a[oe])
			if (Zh(a, "overview-stream")) {
				c = Bo(a.id);
				break
			}
		c && ($.Jh = b, fq(c), mr(Uf))
	}
};
$p.hv = new TC(zv);

function ZC(a, b, c, d) {
	this.Gl = a;
	this.h = b;
	this.Nv = c;
	this.Wl = d;
	jC[L](this, Ue)
}
R(ZC, jC);
O = ZC[G];
O.Ac = function () {
	return 'Uploading "' + (this.h + '" bundle.')
};
O.xc = function () {
	return 'Bundle "' + (this.h + '" uploaded.')
};
O.Am = function () {
	return 'Bundle "' + (this.h + '" upload failed.')
};
O.Gd = function () {
	return [op]
};
O.fb = function () {
	var a = ZC.a.fb[L](this);
	a[w](["bundle", this.Gl]);
	a[w](["title", this.h]);
	a[w](["desc", this.Wl]);
	for (var b = 0, c; c = this.Nv[b]; b++) a[w](["streams", c]);
	return a
};

function $C(a, b) {
	this.Gl = a;
	this.h = b;
	jC[L](this, Ve)
}
R($C, jC);
O = $C[G];
O.Ac = function () {
	return 'Deleting "' + (this.h + '" bundle...')
};
O.xc = function () {
	return 'Bundle "' + (this.h + '" deleted.')
};
O.Am = function () {
	return 'Bundle "' + (this.h + '" deletion failed.')
};
O.Gd = function () {
	return [op]
};
O.fb = function () {
	var a = ZC.a.fb[L](this);
	a[w](["bundle", this.Gl]);
	return a
};

function aD(a, b, c) {
	this.Si = c;
	this.Or = m;
	this.Sv = b;
	gB[L](this, a, b, m);
	this.Ip = 300
}
R(aD, gB);
aD[G].Hp = function (a) {
	return a
};
aD[G].Td = function (a) {
	this.Or || (this.Or = j, this.Sv[v](bD({
		subscriptions: this.Si
	})));
	aD.a.Td[L](this, a)
};

function cD(a, b, c, d) {
	this.Q = a;
	this.h = b;
	this.Si = c;
	this.QB = m;
	this.Dn = [];
	this.Lr = d;
	this.ds = Bo(this.Q).$b()
}
R(cD, uj);
O = cD[G];
O.i = function () {
	cD.a.i[L](this);
	this.Yu && this.Yu.s();
	Fh(this.Dn, Oj)
};

function dD(a) {
	a.ee && S(a.ee, "bundle-added")
}
O.$b = function () {
	return this.ds
};
O.Cp = function () {};
O.de = function (a) {
	var b = {
		title: this.h,
		Fw: this.Si[F]
	};
	this.Cp(b);
	var c = W(b.Fw) + " feeds",
		d = '<table class="bundle-container"><tbody><tr><th rowspan="3">' + (b.Mp ? '<img class="bundle-picture" src="' + W(b.Mp) + '">' : '<div class="bundle-icon"></div>');
	if (b[Xb]) {
		d += '<div class="bundle-sub-count">';
		if (1 < b[Xb]) var e = W(b[Xb]) + " subscribers",
		d = d + e;
		else d += "1 subscriber";
		d += "</div>"
	}
	d += '</th><td colspan="2" class="meta-info">';
	b.eA && (d += '<a class="preview unimportant-link goog-inline-block">Preview</a>');
	d += '<div class="title">' +
		b[id] + "</div>";
	b[Mc] && (d += '<div class="author">Bundle created by ' + b[Mc] + "</div>");
	this.ee = sn(d + (b.vq ? '<div class="desc">' + b.vq + "</div>" : "") + '</td></tr><tr><td class="num-feeds fixed-height"><span class="bundle-show-details-link link unselectable"><div class="bundle-show-details-toggle"></div>' + c + '</span></td><td class="subscribe">' + eD({
		ln: j,
		Ke: j,
		Ga: "bundle-subscribe",
		content: '<span class="subscribe-button">Subscribe</span>'
	}) + '<div class="bundle-subscribed ' + (b.CA ? "hidden" : "") + '"><span class="message">Subscribed</span></div></td></tr><tr><td colspan="2"><div class="bundle-contents"></div></td></tr></tbody></table>');
	a[v](this.ee);
	this.NB = a = Y(this.ee, "bundle-contents");
	this.Yu = new aD(Y(this.ee, "bundle-show-details-link"), a, this.Si);
	this.ds && S(this.ee, "bundle-user-owned");
	a = Y(this.ee, "subscribe");
	this.Lr && dD(this);
	this.Dn[w](V(a, "click", P(this.tu, this, i)))
};
O.tu = function (a) {
	dD(this);
	var b = Hh(this.Si, function (e) {
		return e.id
	}),
		c = jo(this.h),
		c = Tz(c)[0],
		c = Hp(Z, c),
		b = new ot(b, k, [c]);
	b.$e[w](["bundle", this.Q]);
	b.$e[w](["source", "BUNDLE"]);
	var d = this;
	b.Ac = function () {
		return "Subscribing to bundle " + (d.h + "...")
	};
	b.xc = function () {
		return "Subscribed to bundle " + (d.h + ".")
	};
	b[Cb](a)
};

function fD(a, b, c, d, e, g, h, l, r, t) {
	e && wh(e, "/public/") ? e = df + e : e && On("at") && (e = e[z](/^\/s2/, "/s2/b/" + na));
	this.Dv = e;
	this.Ev = ph(g);
	this.Wl = h;
	this.hu = l;
	this.gA = r;
	this.zA = t;
	d = Jh(c, function (y) {
		return op[ge](y.id)
	});
	cD[L](this, a, b, c, d)
}
R(fD, cD);

function gD(a, b, c, d) {
	Jr(ak("/api/0/get-bundle", "bundleId", a, "fetchAuthor", "true"), function (e) {
		e[ec][0] ? (e = e[ec][0], e = new fD(e.id, e[id], e[ce], m, e[xc], e[ed], e[ve], b, c, e[Xb]), d(e)) : d(k)
	})
}
fD[G].de = function (a) {
	fD.a.de[L](this, a);
	this.hu && (a = Y(this.ee, "preview", "a"), this.Dn[w](Wr(a, Bo(this.Q))))
};
fD[G].Cp = function (a) {
	a.Mp = this.Dv;
	a.author = this.Ev;
	a.vq = this.Wl;
	a.eA = this.hu;
	a.CA = !this.gA;
	a.subscriberCount = this.zA
};

function hD(a) {
	SC[L](this, a, P(this.Po, this))
}
R(hD, SC);
hD[G].Po = function (a) {
	var b = sn('<div class="bundles-display"><a id="bundles-back">&laquo; Back to the directory</a><table><tr><td id="bundles-col1"></td><td id="bundles-col2"></td></tr></table></div>');
	a[v](b);
	Tv(Cv, qk("bundles-back"), 0);
	var c = qk("bundles-col1"),
		d = qk("bundles-col2"),
		e = c;
	iD(this, function () {
		var g = e;
		e = c == e ? d : c;
		return g
	})
};

function Dv() {
	var a = this;
	OC[L](this, "directory-selector", Ze, "Discover and search for feeds", function (b) {
		a.Bo(b);
		a.qC = new jD("service-quickadd-form", "service-quickadd-username", "service-quickadd-service", "service-quickadd-button", "Username", "Please enter a username for the service you'd like to subscribe to.");
		a.uC = new jD("directory-saved-searches-form", "directory-saved-searches-query", "directory-saved-searches-service", "directory-saved-searches-button", "Topic", "Please enter a keyword to search for.")
	});
	kD || (kD = new lD);
	mD || (mD = new nD);
	oD || (oD = new pD)
}
R(Dv, OC);
O = Dv[G];
O.ze = "directory";
O.Nn = {};
O.Nb = "";
O.yl = m;
O.On = 0;
O.Bo = function (a) {
	this.yl = m;
	this.Nn = tn(a);
	var b = gs(qk("rec-box")),
		c = RC(this, "_RECS_DATA").recs;
	this.On = b[F];
	for (var d = 0, e; e = b[d]; d++) {
		var g = c[d],
			h = g[id],
			g = new cp(g[C], g[Rc], h);
		V(e.uu, "click", P(this.vA, this, g, h, e.Lk));
		V(e.Mu, "click", P(this.dB, this, g, h, e.Lk));
		V(e.ew, "click", P(this.fw, this, g, h, e.Iz));
		qD(this, g, h, e.Qq);
		Wr(e.Su, g);
		Wr(e.Au, g)
	}
	rD(this, a);
	sD(this, j);
	tD(this);
	uD(this);
	zr(qr, X("import-link"), "import");
	"directory-category" in this.Nn && vD(this.Nn["directory-category"])
};

function rD(a, b) {
	var c = Lg(a.Dk) ? a.Dk : 0;
	a.Dk = i;
	Zy(b, c, function (d) {
		$p.op[zd]([d])
	})
}

function sD(a, b) {
	if (b) {
		MC(kD, qk("directory-start-bundle-creator"));
		V(qk("create-bundle-button"), "click", function () {
			kD[vc]();
			kD.gh(j)
		});
		var c = RC(a, "_FEATURED_BUNDLES");
		wD.setData(c);
		var d = c[ec][F];
		1 < d && (T(qk("featured-bundles-container"), "hidden"), (new xD(qk("featured-bundles-list"), 1)).ta([c[ec][s[Nb](s.random() * d)]]), u(qk("featured-bundles-show-all"), "View all " + (d + " &raquo;")), MC(oD, qk("featured-bundles-show-all")))
	}
	var d = RC(a, "_DIRECTORY_DATA"),
		c = b ? [qk("builtin-bundles-list")] : [qk("full-bundles-col1"),
			qk("full-bundles-col2")
		],
		d = d[ec],
		e = "View all " + (li(d)[F] + " &raquo;");
	u(qk("browse-bundles-link"), e);
	a.Ov = [];
	b && (d = hi(d, function (t) {
		return t.isfeatured
	}));
	var e = 0,
		g;
	for (g in d) {
		var h = d[g],
			l = c[e++];
		if (!b) {
			var r = Ck("div", "full-bundle-layout");
			l[v](r);
			l = r
		}
		h = new cD(h.id, h[id], h[kd], h.isadded);
		a.Ov[w](h);
		h.de(l);
		e >= c[F] && (e = 0)
	}
}

function tD(a) {
	var b = X("discover-container"),
		c = X("full-bundles-container");
	V(X("browse-bundles-link"), "click", function () {
		a.yl || (sD(a, m), a.yl = j);
		S(b, "hidden");
		T(c, "hidden")
	});
	V(X("back-to-discover-link"), "click", function () {
		T(b, "hidden");
		S(c, "hidden")
	})
}

function uD(a) {
	var b = X("directory-search-query"),
		c = X("directory-search-button");
	V(X("directory-search-form"), "submit", a.rt, m, a);
	V(c, "click", a.rt, m, a);
	a.Nb ? yD(a) : (za(b, "Keywords"), Lj(b, "focus", function () {
		"Keywords" == b[Yb] && (za(b, ""), T(b, "discover-default-search"))
	}, m, a))
}
O.Fr = function (a, b, c) {
	(new Yz(a, function (d) {
		xt(c[C], d, b[id])
	})).ua(c)
};

function yD(a) {
	var b = X("directory-search-query");
	za(b, a.Nb);
	T(b, "discover-default-search")
}
O.rt = function (a) {
	a && (a[wd](), a[Zb]());
	(a = lh(X("directory-search-query")[Yb])) && "Keywords" != a && (new rC(a))[vc]()
};
Ja(O, function (a) {
	Lg(a) && (this.Dk = a);
	Dv.a[vc][L](this)
});

function Tv(a, b, c) {
	MC(a, b, function () {
		a.Dk = c
	})
}

function vD(a) {
	for (var b = 0, c; c = a[b]; b++) nb(c, Q(zD, c.id[be](19)))
}

function zD(a) {
	(new rC("", a))[vc]()
}

function qD(a, b, c, d) {
	(new Yz(d, function (e) {
		xt(b[C], e, c)
	})).ua(b)
}
O.dB = function (a, b, c) {
	vt(a[C], b, Q(T, c, "result-subscribed"), j)
};
O.vA = function (a, b, c) {
	nt(a, b, Q(S, c, "result-subscribed"))
};
O.fw = function (a, b, c) {
	var d = this;
	(new AD(a, b || "(title unknown)"))[Cb](function () {
		S(c, "hidden");
		d.On--;
		var e = 0 < d.On;
		$h(X("recomendations-feed-subscribe"), "hidden", !e);
		$h(X("recommendations-empty"), "hidden", e);
		$h(X("rec-feeds-list"), "hidden", !e)
	})
};

function jD(a, b, c, d, e, g) {
	if (a = X(a)) this.Eg = X(b), this.Wt = X(c), this.$v = e, this.tw = g, V(a, "submit", this.cd, m, this), V(X(d), "click", this.cd, m, this), za(this.Eg, e), Lj(this.Eg, "focus", function () {
		this.Eg[Yb] == e && (za(this.Eg, ""), T(this.Eg, "discover-default-search"))
	}, m, this)
}
R(jD, pC);
jD[G].cd = function (a) {
	var b = this.Wt[this.Wt.selectedIndex][Yb],
		c = lh(this.Eg[Yb]);
	jh(c) || c == this.$v ? (ja(vh(this.tw)), a[wd](), a[Zb]()) : (b = zn(b, nh(c)), jD.a.cd[L](this, a, b), mr("service-quickadd"))
};
$p.op = new TC(Dv);
$p.op.Ci = function (a) {
	a = 0 == a[F] ? i : oa(a[0], 10);
	(new Dv)[vc](a)
};

function BD() {}

function CD(a, b) {
	Jr("/api/0/list-featured-bundle", function (c) {
		a.setData(c);
		b(c[ec])
	})
}
BD[G].setData = function (a) {
	this.Rp = a
};

function DD(a, b) {
	a.Rp ? b(a.Rp[ec]) : CD(a, b)
}
var wD = new BD;

function xD(a, b) {
	this.FA = a;
	this.ay = b || ea.MAX_VALUE
}
xD[G].ta = function (a) {
	for (var b = this.FA, c = 0, d;
		(d = a[c]) && c < this.ay; c++) d = new fD(d.id, d[id], d[ce], m, d[xc], d[ed], d[ve], j, j, d[Xb]), Ug(b) ? d.de(b()) : d.de(b);
	this.mg && this.mg(a)
};

function nD() {
	hD[L](this, "Featured bundles")
}
R(nD, hD);
nD[G].ze = "featured-all-bundles";

function iD(a, b) {
	$p.cv[zd]();
	var c = new xD(b);
	DD(wD, P(c.ta, c))
}
$p.cv = new TC(nD);

function pD() {
	SC[L](this, "Featured bundles", P(this.Po, this))
}
R(pD, SC);
pD[G].ze = "featured-fixed-bundles";
$p.dv = new TC(pD);
pD[G].Po = function (a) {
	$p.dv[zd]();
	var b = sn('<div id="fixed-featured-bundles-page" class="bundles-display"><a id="bundles-back">&laquo; Back to the directory</a><h2>News</h2><table><tr><td id="fixed-news-c1"></td><td id="fixed-news-c2"></td></tr></table><h2>Tech and web</h2><table><tr><td id="fixed-tech-c1"></td><td id="fixed-tech-c2"></td></tr></table><h2>Food and health</h2><table><tr><td id="fixed-food-c1"></td><td id="fixed-food-c2"></td></tr></table><h2>Trends and fashion</h2><table><tr><td id="fixed-trends-c1"></td><td id="fixed-trends-c2"></td></tr></table></div>');
	a[v](b);
	Tv(Cv, qk("bundles-back"), 0);
	DD(wD, function (c) {
		function d(l, r) {
			var t = e["user/11801782071179513560/bundle/" + l];
			t && (new fD(t.id, t[id], t[ce], m, t[xc], t[ed], t[ve], j, j, t[Xb])).de(qk(r))
		}
		for (var e = {}, g = 0, h; h = c[g]; g++) e[h.id] = h;
		d("Thomas Friedman", "fixed-news-c1");
		d("Arianna Huffington", "fixed-news-c2");
		d("Michelle Malkin", "fixed-news-c1");
		d("Paul Krugman", "fixed-news-c2");
		d("Patrick Ruffini", "fixed-news-c1");
		d("Nicholas Kristof", "fixed-news-c2");
		d("John Dickerson", "fixed-news-c1");
		d("Dexter Filkins", "fixed-news-c2");
		d("Daily Kos", "fixed-news-c1");
		d("Charles Blow", "fixed-news-c2");
		d("Chris Anderson", "fixed-tech-c1");
		d("Lifehacker", "fixed-tech-c2");
		d("Boing Boing", "fixed-tech-c1");
		d("The Daily WTF", "fixed-tech-c2");
		d("Search Engine Land", "fixed-tech-c1");
		d("Jason Kottke", "fixed-tech-c2");
		d("io9", "fixed-tech-c1");
		d("Treehugger", "fixed-tech-c2");
		d("Consumerist", "fixed-tech-c1");
		d("Mark Bittman", "fixed-food-c1");
		d("La Tartine Gourmande", "fixed-food-c2");
		d("The Kitchn", "fixed-food-c1");
		d("Tara Parker Pope", "fixed-food-c2");
		d("Fashionista", "fixed-trends-c1");
		d("Cathy Horyn", "fixed-trends-c2");
		d("The Style Files", "fixed-trends-c1");
		d("Bloomacious", "fixed-trends-c2")
	})
};

function rC(a, b, c) {
	var d = bk($e, "q", a);
	b && (d = bk(d, "cat", b));
	c && (d = bk(d, "start", c));
	var e = "",
		e = ih(a) ? b ? 'Feeds in the "' + (ED(this, b) + '" category') : "All feeds" : b ? 'Feeds matching "' + (ph(a) + ('"in the "' + (ED(this, b) + '" category'))) : 'Feeds matching "' + (ph(a) + '"'),
		g = this;
	OC[L](this, k, d, e, function (h) {
		g.Co(h);
		$p.av[zd]([a, b || "", c || 0])
	})
}
R(rC, OC);

function ED(a, b) {
	switch (b) {
	case "news":
		return "News";
	case "funandgames":
		return "Fun & Games";
	case "finance":
		return "Finance";
	case "sports":
		return "Sports";
	case "lifestyle":
		return "Lifestyle";
	case "technology":
		return "Technology"
	}
	return ""
}
rC[G].Co = function (a) {
	for (var b = gs(a), c = RC(this, "_DIRECTORY_SEARCH_DATA"), d = 0, e; e = b[d]; d++) {
		var g = c.results[d],
			h = Bo(g.streamid);
		Wr(e.Su, h);
		Wr(e.Au, h);
		nb(e.Mu, P(this.eB, this, g, e.Lk));
		this.Fr(e.Qq, g, h);
		nb(e.uu, P(this.xA, this, g, e.Lk))
	}
	var l = c.pagestatus;
	l.haspreviouspage && (b = X("directory-search-results-previous-page"), nb(b, function () {
		(new rC(l[jd], l.categoryid, l.previouspagestart))[vc]()
	}));
	l.hasnextpage && (b = X("directory-search-results-next-page"), nb(b, function () {
		(new rC(l[jd], l.categoryid, l.nextpagestart))[vc]()
	}));
	Tv(Cv, X("directory-search-return"), 1);
	(a = tk(i, "directory-category", a)) && vD(a)
};
rC[G].Fr = function (a, b, c) {
	(new Yz(a, function (d) {
		xt(c[C], d, b[id])
	})).ua(c)
};
rC[G].xA = function (a, b) {
	var c = new ot(a.streamid, a[id]);
	c.$e[w](["source", "FEED_FINDER_SEARCH_RESULT"]);
	c[Cb](Q(S, b, "result-subscribed"))
};
rC[G].eB = function (a, b) {
	vt(a.streamid, a[id], function () {
		T(b, "result-subscribed")
	}, j)
};

function FD() {
	this.Q = "directory-search"
}
R(FD, aq);
FD[G].Ci = function (a) {
	(new rC(a[0], a[1], oa(a[2], 10)))[vc]()
};
$p.av = new FD;
var GD = {
	type: "http://schema.org/WebPage",
	id: "http://www.google.com/reader",
	properties: {
		name: ["Google Reader"],
		description: ["Have trouble keeping up with the sites you visit?\n\nGet all your news and blogs in one place with Google Reader"],
		url: ["http://www.google.com/reader"]
	}
};

function HD(a) {
	var b = In(a.Vc() || "(title unknown)"),
		b = {
			type: "http://schema.org/WebPage",
			id: a[Id](),
			properties: {
				name: [vh(b)],
				description: [Wn(a.vd, 500)],
				url: [Hr(a)]
			}
		}, c = [];
	(new ID(a)).Sj(function (e) {
			c = e.images
		});
	a = [];
	for (var d = 0; d < c[F]; d++) a[w](c[d].src);
	0 < a[F] && (b.properties.image = a);
	return b
}
var JD = k;

function KD() {
	LD();
	var a = PC();
	Qq(27, a, function () {
		a[Ub]()
	});
	if (!ls()) {
		Qq(13, a, MD, i);
		var b = pn(rn("//ssl.gstatic.com/ui/v1/button/search-white.png"), i);
		b.oa(X("search"));
		V(b, "action", MD);
		b.b()[zc]("title", "Search")
	}
}

function PC() {
	return ls() ? gbar.qfgq() : X("search-input")
}
Kg("executeSearch", function () {
	MD();
	return m
}, i);

function MD() {
	var a = PC()[Yb];
	if (jh(a)) a = JD || Uo(), fq(a);
	else $[Kd](a, m, [JD]);
	PC()[Ub]()
}

function ND() {
	n[qd](function () {
		PC()[qc]()
	}, 1)
}
var QC;

function OD() {}
R(OD, jB);
Og(OD);
OD[G].w = function () {
	return "search-restrict"
};

function PD() {
	if (ls()) sB[L](this, "", k, OD.fa());
	else sB[L](this, "", k, jB.fa()), Fm(this, "search-restrict");
	this.Ht = j
}
R(PD, sB);

function QD(a) {
	for (var b = a.wf() - 1; 0 <= b; --b) a.Pe(b)
}
PD[G].Z = function () {
	PD.a.Z[L](this);
	V(this.L(), "highlight", this.qo, m, this)
};
PD[G].qo = function (a) {
	a = a[K].b();
	Ry(a[oe], a)
};
PD[G].ag = function () {
	ls() || PD.a.ag[L](this)
};

function RD(a, b, c) {
	yu[L](this, a, b);
	c && Fm(this, "main-item");
	ls() && this.Ki(j)
}
R(RD, yu);

function LD() {
	var a = QC = new PD;
	Su(a, !ls());
	SD();
	wr.ce(SD);
	op.ce(SD);
	a.oa(ls() ? gbar.qfgw() : X("search"));
	V(a, "change", function (b) {
		JD = b[K].yg().oi
	});
	V(a, "show", Q(Uy, m));
	V(a, "hide", Q(Uy, j))
}

function SD() {
	var a = QC;
	QD(a);
	a.M(new RD(rg.Fb, Uo(), j));
	a.M(new RD(qg.Fb, Ao(Fp(Z)), j));
	a.M(new RD(sg.Fb, Ao(Yo(Z)), j));
	a.M(new RD("Recommended items", Go(), j));
	wr[wb](function (b) {
		op.Qa(function (c) {
			var d = new RD("Folders", k, j);
			d.Ca(m);
			a.M(d);
			for (var d = 0, e; e = b[d]; d++) {
				var g = xp(e);
				e = Ao(e);
				a.M(new RD(g, e, m))
			}
			d = new RD("Subscriptions", k, j);
			d.Ca(m);
			a.M(d);
			for (d = 0; g = c[d]; d++) a.M(new RD(g.h, g.d, m))
		})
	});
	a.lh(0)
}

function TD(a, b) {
	for (var c = rA(a), d = b[F], e = 0, g; g = c[e]; e++) g = UD(g, b), -1 != g && g < d && (d = g);
	return d < b[F] ? "..." + b[be](d) : b
}

function UD(a, b) {
	var c = Bh(a),
		c = [b[Kd](va("[a-zA-Z0-9]+\\s+[a-zA-Z0-9]+\\s+" + c, "i")), b[Kd](va("[a-zA-Z0-9]+\\s+" + c, "i")), b[Kd](va("" + c, "i"))];
	c.sort(function (g, h) {
		return g - h
	});
	for (var d = -1, e = 0; e < c[F]; e++)
		if (-1 != c[e]) {
			d = c[e];
			break
		}
	return d
}

function VD() {
	this.Q = "search"
}
R(VD, aq);
VD[G].Ci = function (a) {
	var b = a[0],
		c = a[1];
	a = a[Hb](2);
	var d = $,
		e;
	e = $.g();
	if (!e || !Jo(e) || ep(e)) e = m;
	else {
		var g = ip(e) ? ip(e)[N]("") == a[N]("") : j;
		e = e.gb() == b && g
	} if (jh(c))
		if (e && qx(d) == sw.bj) WD();
		else if (e && qx(d) == sw.dc && d.va) dq(), eq(d.g());
	else d[Kd](b, k, Hh(a, Bo));
	else c = oa(c, 10), e ? XD(d, c) : d[Kd](b, c, Hh(a, Bo))
};
$p.dc = new VD;

function Bv() {
	var a = this;
	OC[L](this, "trends-selector", af + "?tz=" + -(new Date).getTimezoneOffset(), "Trends", function (b) {
		a.Co(b);
		$p.kv[zd]()
	})
}
R(Bv, OC);
Bv[G].ze = "trends";
Bv[G].Co = function (a) {
	function b(r, t) {
		Ya(r, "sorting-container " + t)
	}

	function c(r, t) {
		if (r in g)
			for (var y = g[r], H = 0, Ha; Ha = y[H]; H++) nb(Ha, Q(b, g["sorting-container"][H], t))
	}
	this.el = Zy(a);
	for (var d = 0; d < this.el[F]; d++)
		if ("trends-bucket-chart" == this.el[d][Id]())
			for (var e = 0; e < this.el[d].DA; e++) Yy(this.el[d], e);
	eh("en", "ja") && S(X("trends-mobile-sorting-header"), "hidden");
	var g = tn(a);
	c("top10-link", "show-top10");
	c("top20-link", "show-top20");
	c("top40-link", "show-top40");
	if (e = g["trends-sorting-stream-link"])
		for (var d =
			0, h; h = e[d]; d++) a = Bo(h[oe][oe].id[be](7)), Wr(h, a, k, j);
	if (h = g["trends-sorting-unsubscribe"])
		for (var d = 0, l; l = h[d]; d++) a = Bo(l[oe][oe].id[be](7)), nb(l, ut(a[C], In(e[d][Qb]), P(this.rx, this, l[oe][oe])));
	if (e = g["trends-cloud-stream-link"])
		for (d = 0; h = e[d]; d++) a = Bo(h[oe].id[be](7)), Wr(h, a, k, j);
	u(X("trends-total-item-read-count"), "Loading the count of all the items you have ever read.");
	YD(this)
};
Bv[G].rx = function (a) {
	a = a.id;
	for (var b = tk("table", "sorting", X("trends")), c = 0, d; d = b[c]; c++) {
		d = d[Tc]("tr");
		for (var e = [], g = 0, h; h = d[g]; g++) h.id == a && e[w](h);
		if (e[F]) {
			for (var l, g = 0; h = e[g]; g++) l = h[oe], l[Hd](h);
			d = 0;
			for (e = l[uc]; e; e = e[Oc]) e[je] && "tr" == e[je][Be]() && (g = "", 0 == d && (g += "first-row "), 0 == d % 2 && (g += "alt "), 10 > d && (g += "top10 "), 20 > d && (g += "top20 "), 40 > d && (g += "top40 "), Ya(e, g), d++)
		}
	}
};

function YD() {
	var a = X("trends-total-item-read-count");
	Zh(a, "loaded") || Ys(Fp(Z), j, function (b, c) {
		var d;
		d = {
			lA: c,
			total: b
		};
		d = "Since <b>" + (W(d.lA) + ("</b> you have read a total of <b>" + (W(d.total) + "</b> items.")));
		u(a, d);
		Yh(a, "loading", "loaded")
	})
}
$p.kv = new TC(Bv);
var ZD, Mv, vx, uv, wv, yv, Av, Cv, kD, mD, oD;

function _FR_scrollMain(a) {
	new Nq;
	bq = new Wp;
	Z = new Ep(a);
	ua && (Dt(), wr = new $D, op = new aE);
	xr = new bE;
	vx = new cE;
	Eo(function (c) {
		if (Rv) {
			var d = Rv.ac[c[C]];
			if (d && 0 < d[F]) return d[0].g()
		}
		return c
	});
	Eo(function (c) {
		return Rv && "pop/explore" == c[C] ? Rv.Lh || c : c
	});
	Eo(function (c) {
		return c[C] == Fo() + "en" ? Go() : c
	});
	dE(vx, function (c) {
		var d = Rv;
		if (d) {
			if (d.Lh && d.Lh.W(c)) return Bo("pop/" + mf);
			if (d.lm && d.lm.W(c)) return Bo("pop/" + nf)
		}
		return c
	});
	EC(function (c) {
		$[Yc](c)
	});
	FC(function (c, d) {
		d(ux(vx, c))
	});
	CC = eE;
	Ps = fE;
	if (U && !ej("7")) try {
		q.execCommand("BackgroundImageCache",
			m, j)
	} catch (b) {}
	Ct(Gf, gE)
}

function gE() {
	ZD = new JA;
	V(ZD, "resize", hE);
	var a = X("chrome"),
		b;
	ls();
	b = '<div id="chrome-viewer-container"><div id="chrome-viewer" class="invisible">' + ('<div id="viewer-header-container"><div id="viewer-header"><div id="viewer-top-controls-container"><div id="viewer-top-controls"><div class="lhn-nav-button-container">' + eD({
			id: "chrome-lhn-menu",
			bn: j,
			Ga: "hidden",
			content: "Navigation"
		}) + "</div>" + fn({
			id: "viewer-refresh",
			Ga: "viewer-buttons",
			title: "Refresh",
			Ch: '<img src="' + W("/ui/refresh.png") + '" alt="" class="jfk-button-img">'
		}) +
		'<div id="viewer-view-options"></div><span id="mark-all-as-read-split-button"></span>' + eD({
			id: "stream-prefs-menu",
			bn: j,
			content: "Folder settings..."
		}) + '<span id="settings-button-container">' + fn({
			id: "settings-button",
			Ga: "viewer-buttons goog-flat-menu-button",
			title: "Settings",
			Ch: '<img src="' + W("/ui/settings.png") + '" alt="" class="jfk-button-img"><div id="settings-button-menu" class="goog-menu"></div>'
		}) + '</span><span id="item-up-down-buttons">' + fn({
			id: "entries-up",
			title: "Previous item",
			Ch: '<img src="' + W("/ui/up_arrow.png") + '" alt="" class="jfk-button-img">'
		}) + fn({
			id: "entries-down",
			title: "Next item",
			Ch: '<img src="' + W("/ui/down_arrow.png") + '" alt="" class="jfk-button-img">'
		}) + '</span><span id="chrome-view-links"><span id="stream-view-options-container"></span></span><div id="viewer-recommendations-return" class="link unselectable">&laquo; Back to your recommended feeds</div><span id="viewer-translated-by" class="hidden">Translated by Google - <span class="link" id="viewer-translate-revert-link">View Original</span></span></div></div></div></div>') +
		'<div id="chrome-fullscreen-top-toggle" class="hidden"><div id="chrome-fullscreen-top-toggle-icon"></div></div><div id="viewer-container"><div id="activity-indicator" class="hidden"></div><div id="viewer-entries-container" ><div id="title-and-status-holder"><span id="chrome-title">&nbsp;</span><span id="viewer-single-parent"></span><span id="viewer-single-item-parent"></span><span id="entries-status"></span><div class="clear" style=""></div></div><div class="samedir"><div id="quick-add-success" class="hidden">You have subscribed to "<span id="quick-add-success-title"></span>."</div><div id="entries"><div id="scroll-filler"><div id="scroll-filler-recs-message" class="scroll-filler-message"><div>You have no more items.</div><div class="secondary">But wait!  We have recommended items waiting for you to read.</div><div class="secondary">Sweet! &nbsp;<a id="scroll-filler-see-recommendations">Show me my recommendations</a></div></div><div id="single-item-bottom-links"></div></div></div></div></div><div id="viewer-page-container"></div></div></div></div>';
	u(a, b);
	iE.fa().ta();
	iE.fa().I(X("settings-button"));
	rr(jE);
	$ = new kE;
	$.ua();
	$.zb[w](Zv);
	$.zb[w](cw);
	ca && $.zb[w](lE);
	$.zb[w](mE);
	$.zb[w](aw);
	$.zb[w](nE);
	$.zb[w]($v);
	$.zb[w](oE);
	pE();
	hE();
	Lt();
	qE();
	a = Go();
	Wr(X("scroll-filler-see-recommendations"), a);
	rE();
	sE();
	tE()
}

function pE() {
	is();
	if (fh(n[yd].pathname, Zn)) uE();
	else if (fq(Bo(_INPUT_STREAM_ID)), "true" == On("newSub")) {
		var a = function () {
			ox($, a);
			tC($)
		};
		$.xg[w](a)
	}
	vE();
	fv = new cv;
	ev = new gv;
	ev.oa(qk("nav"));
	ev.ua();
	KD();
	bq.ta()
}

function wE() {
	yr = new hy;
	var a = Mv,
		b = Mv.Jg,
		c = $,
		d = P(yr.Dp, yr),
		e = P(yr.nv, yr);
	xE(d);
	d(["t"], c.qw, c);
	d(["v"], c.Lg, c);
	d(["s"], c.dp, c);
	ca && d(["shift+s"], c.Yz, c);
	d(["m"], c.cl, c);
	d(["e"], c.rw, c);
	d(["shift+t"], c.fA, c);
	d([187], P(c.Wp, c, 10));
	e([61], [187]);
	e([107], [187]);
	d([189], P(c.Wp, c, -10));
	e([109], [189]);
	d(["a"], Q(Pv));
	d(["1"], P(c.Yo, c, sw.eg));
	e([97], ["1"]);
	d(["2"], P(c.Yo, c, sw.qp));
	e([98], ["2"]);
	d(["3"], P(c.Yo, c, sw.dc));
	e([99], ["3"]);
	d(["shift+a"], c.Gn, c);
	d(["r"], function () {
		a[Ic]();
		c[Ic](i, j)
	});
	d(["f"], yE);
	d(["u"], ev.OA, ev);
	d([85, 1], ev.Du, ev);
	d(["shift+n"], b.ef, b);
	d(["shift+p"], b.qh, b);
	e(["shift+j"], ["shift+n"]);
	e(["shift+k"], ["shift+p"]);
	d(["shift+x"], b.Mc, b);
	d(["shift+o"], b.lt, b);
	d(["g h"], yv[vc], yv);
	d(["g shift+t"], Av[vc], Av);
	d(["g d"], P(Cv[vc], Cv, 0));
	d(["g a"], uv[vc], uv);
	d(["g s"], wv[vc], wv);
	d(["g t"], zE.kb, zE);
	d(["g u"], AE.kb, AE);
	d(["g e"], function () {
		fq(Rv.Lh)
	});
	d(["g p"], function () {
		fq(Go())
	});
	d([191, 1], VC);
	d([27], YC);
	yr.Ol = YC;
	iy(yr, function (g) {
		BE[CE] == g ? CE++ : CE = 0;
		if (CE >= BE[F]) {
			CE = 0;
			g = Zh(q[J],
				"konami");
			mr(Xf, g ? "off" : "on", 1);
			$h(q[J], "konami", !g);
			var h = X("search-input");
			!g && (h && !h[Yb]) && za(h, "Ninja!");
			if (g) xr[Ic]();
			else {
				g = xr;
				for (var h = 0, l; l = g.Eb[h]; h++) l.Zd = 30, l.Ee = m, DE(g, l)
			}
			g = j
		} else g = m;
		return !g
	});
	d([37], function () {});
	d([39], function () {});
	d(["b"], function () {});
	d(["/"], ND)
}

function xE(a) {
	var b = $;
	a(["j"], b.ef, b);
	a(["k"], b.qh, b);
	a(["n"], P(b.ef, b, j));
	a(["p"], P(b.qh, b, j));
	a([13], b.Mc, b);
	a(["o"], b.Mc, b);
	a([32], P(b.iu, b, j));
	a([32, 1], P(b.iu, b, m));
	a([40], P(b.Qs, b, j));
	a([38], P(b.Qs, b, m));
	a([34], P(b.Le, b, j));
	a([33], P(b.Le, b, m));
	a([35], P(b.Sq, b, j));
	a([36], P(b.Sq, b, m))
}
var EE = m;

function FE() {
	function a(b, c) {
		var d = qk(b);
		d && ob(d[I], c)
	}
	EE || (EE = j, T(X("main"), "hidden"), S(q[J], "loaded"), fr(), hE(), wE(), GE(), Yq(function (b, c) {
		var d = new Ty("captcha-dialog", j);
		Cy(d, "Word Verification");
		Fy(d, j);
		Jy(d, My);
		d.La(HE({
			uz: bk(bf, "t", b)
		}));
		Lj(d, "dialogselect", function (e) {
			if ("cancel" == e.key) return j;
			c(qk("captcha-answer")[Yb])
		});
		d.D(j);
		qk("captcha-answer")[qc]()
	}), a("loading-error", "none"), a("main", ""), a("top-bar", ""), n[Db](_STUCK_TIMEOUT), IE())
}

function GE() {
	Wt(function (a) {
		if (a && (a = Mv ? JE(Mv) : k)) {
			Ry(Mv.se(), KE(a));
			a = a.Hd();
			Ry(Mv.se(), KE(a[a[F] - 1]));
			var b = Sy("blogger-following-intro-bubble", '<h3>Blogs I\'m following</h3><p>The blogs you follow in Blogger have been added as subscriptions in Google Reader. Subscriptions can be managed in Reader without affecting your following list in Blogger. <a target="_blank" href="http://help.blogger.com/bin/answer.py?answer=99761">Learn more</a></p><p>You can also <span class="link" id="blogger-following-opt-out">hide followed blogs</span> if you\'d rather not see them in Reader.</span><div id="blogger-following-button-container">' +
				eD({
					id: "blogger-following-intro-button",
					Ke: j,
					content: "OK"
				}) + "</div>");
			Lj(X("blogger-following-intro-button"), "click", function () {
				Hk(b);
				Et(zf, m[bd](), i)
			});
			Lj(X("blogger-following-opt-out"), "click", function () {
				Hk(b);
				Et(zf, m[bd](), i);
				Xt(m, function () {
					br("Your Blogger followed blogs <i>will not</i> be shown. You can re-show them on the settings page.", cr, i, i);
					wr[Ic]();
					op[Ic]();
					xr[Ic]()
				})
			});
			LE()
		}
	})
}

function LE() {
	var a = Mv ? JE(Mv) : k;
	if (a) {
		var b = X("blogger-following-intro-bubble");
		if (b)
			if (ev && ev.kc()) S(b, "hidden");
			else {
				T(b, "hidden");
				var c = vl(ME(a, "name")),
					a = c[B] + c[x],
					d = c.top + c[M] / 2,
					c = tl(b)[M],
					d = d - c / 2;
				if (0 > d) d = 0;
				else {
					var e = wk(n)[M];
					d + c > e && (d = e - c)
				}
				el(b, a, d)
			}
	}
}
var NE = {
	trends: Bv,
	overview: zv,
	directory: Dv
};

function uE() {
	Os(function (a) {
		a ? (a = bq.fk ? (a = n[yd].hash) && 1 < a[F] ? Zp(bq, a[be](1)) != k : m : m, !a && !OE() && ((a = On("page")) && a in NE ? (new NE[a])[vc]() : Ut(PE))) : QE()
	})
}

function OE() {
	var a = n.webkitIntent;
	if (!a) return m;
	var b = a.getExtra && a.getExtra("url");
	!b && !(a[Kb] instanceof Blob) && (b = a[Kb]);
	if (!b) return m;
	var c = Vj(b)[1] || k;
	return !c || "http" != c && "https" != c ? m : "http://webintents.org/view" == a[ee] ? (a = Bo("feed/" + b), fq(a), j) : "http://webintents.org/subscribe" == a[ee] ? ((new pC).cd(k, b), j) : m
}

function QE() {
	var a = OE();
	a || fq(Go());
	Ct(Hf, function (b) {
		b || (b = a ? "intent" : On("tab") != k ? "onegoogle" : On("source") || "unknown", Et(Hf, b))
	})
}

function PE(a) {
	wr[wb](function () {
		function b() {
			if (yv) yv.No = j, yv[vc]();
			else n[qd](b, 50)
		}
		try {
			eh(a, Fo()) && (a = Fo() + "en");
			var c = Bo(a);
			if (Wo(c) || wr.hb(c) != k || ap(c) || c instanceof mp) {
				fq(c);
				return
			}
		} catch (d) {}
		b()
	})
}

function hE() {
	function a(e) {
		var g = kl(e).y,
			h = X("viewer-footer"),
			g = c - g - (h && h[xe] ? h[xe] : 0),
			g = g - 13;
		0 < g && pb(e[I], g + "px")
	}
	var b = wk(n);
	Mt(function (e) {
		var g = hk(b, bC) ? "n" : b[x] < cC[x] || b[M] < cC[M] ? "t" : b[x] < dC[x] || b[M] < dC[M] ? "s" : "n",
			h = "large";
		"t" == g ? h = "small" : "s" == g && (h = "medium");
		g = Nt[h];
		e = e.Ek < g.Ek ? e : g;
		RE(iE.fa(), g);
		Kt(e)
	});
	var c = b[M];
	if ($)
		if ($.va) {
			var d = X("sections-holder");
			d ? a(d) : a(X("viewer-page-container"))
		} else a(kx($));
	ev && ev.Oc(c);
	$ && SE($) && TE($);
	LE()
}

function NC(a, b, c) {
	c || Sa(kx($), 0);
	UE(Mv);
	$.va = j;
	$[me]();
	u(X("chrome-title"), b);
	S(X("chrome"), "page-view");
	b = X("viewer-page-container");
	u(b, "");
	b[v](a);
	Sa(b, 0);
	T(X("chrome-viewer"), "invisible");
	if (a = X("sections-header")) Y(a, "lhn-nav-button-container")[v]($.os), Y(a, "settings-button-container")[v]($.$t);
	hE()
}

function dq() {
	$.va = m;
	T(X("chrome"), "page-view");
	u(X("viewer-page-container"), "");
	hE()
}

function jE() {
	if (!$.va) {
		var a = $.g();
		op.ve(a, function (b) {
			b || a.$b() || uE()
		})
	}
	hE()
}

function eE(a) {
	if (!Mv) return m;
	a = Mv.ac[a[C]];
	return !a || 1 != a[F] || !(a[0] instanceof VE) ? m : 0 == a[0].xe()
}

function WE() {
	function a() {
		$h(X("unsupported-browser-warning-dlg"), "hidden", j)
	}
	var b = sn('<div id="unsupported-browser-warning-dlg"><div class="unsupported-browser-warning-text"><p class="warning-text-header">Google Reader is not supported in your browser</p><p class="warning-text-explanation">Upgrade your browser for free to get the latest speed and security updates.</p></div>' + eD({
		ln: j,
		Ke: j,
		id: "upgrade-browser-button",
		content: '<span class="upgrade-browser-button-label">Upgrade now...</span>'
	}) + eD({
		ln: j,
		Ke: j,
		id: "upgrade-browser-remind-later-button",
		content: "Remind me later"
	}) + eD({
		ln: j,
		Ke: j,
		id: "dont-upgrade-browser-button",
		content: "Don't upgrade"
	}) + "</div>");
	q[J][v](b);
	V(X("upgrade-browser-button"), "click", function () {
		jb(n[yd], "http://www.google.com/support/reader/bin/answer.py?hl=en&answer=182666")
	});
	V(X("dont-upgrade-browser-button"), "click", function () {
		Et(Kf, ea.MAX_VALUE[bd]());
		a()
	});
	V(X("upgrade-browser-remind-later-button"), "click", function () {
		var c = ah() + 6048E5;
		Et(Kf, c[bd]());
		a()
	})
}

function IE() {
	(U && !ej("8") || Ri && !ej("1.9") || Si && !ej("522.11")) && Zt(function (a) {
		a && WE()
	})
}

function sE() {
	V(X("chrome-fullscreen-top-toggle"), "mouseover", function () {
		ai(q[J], "fullscreen-top-toggle");
		ai(X("viewer-header"), "hidden");
		hE()
	})
}
var XE;

function yE() {
	var a = Zh(q[J], "fullscreen");
	!a && yv.dn() && uv[vc]();
	ai(q[J], "fullscreen");
	if (!a || !XE) XE = ev.kc(), ev.Eo(!a);
	$h(X("viewer-header"), "hidden", !a);
	$h(X("chrome-fullscreen-top-toggle"), "hidden", a);
	T(q[J], "fullscreen-top-toggle");
	hE()
}

function tE() {
	"gbar" in n && gbar.asmc && gbar.asmc(function () {
		mr(Wf, i, 1);
		var a;
		a = $.va || !$.vb ? k : 0 > $.da ? $.ea[0] : $.ea[$.da];
		return (a = !a ? GD : HD(a.Uc())) ? {
			items: [a]
		} : k
	})
}

function rE() {
	ha != k && $t(function (a) {
		a != ha.version && YE()
	})
}

function YE() {
	var a = new xy("on-login-promotion modal-dialog", j);
	Fy(a, j);
	Cy(a, ha[id]);
	a.La(ha[J]);
	a.Cj = j;
	Jy(a, yy(new zy, Ay, j, j));
	a.oa();
	ZB(a, "ok");
	a.D(j);
	Lj(a, "afterhide", function () {
		au(ha.version)
	})
}
Kg("showOnLogin", function () {
	au(-123, function () {
		n[yd].reload(j)
	})
}, i);

function ZE() {
	var a = this,
		b = [Nt.large, Nt.medium, Nt.small];
	this.Vl = [];
	Fh(b, function (c) {
		var d = new hB(c[te]);
		d.oi = c;
		c.kC = d;
		V(d, "action", function () {
			var e = d.S();
			Kt(e);
			Et(of, e.id);
			hE();
			$E(a)
		});
		a.Vl[w](d)
	});
	$E(this)
}

function $E(a) {
	Mt(function (b) {
		Fh(a.Vl, function (c) {
			var d = c.S() == b;
			Hm(c, d)
		})
	})
}
ZE[G].items = function () {
	return this.Vl
};

function iE() {
	Jl[L](this);
	this.Zf = [];
	this.zh = []
}
R(iE, Jl);
Og(iE);
O = iE[G];
O.ta = function () {
	var a = this,
		b = new su("Display Density:");
	a.Zf[w](b);
	this.tq = new ZE;
	Fh(this.tq[Nc](), function (c) {
		a.Zf[w](c)
	});
	this.Zf[w](new Au);
	b = new yu("Reader settings");
	this.j(b, "action", this.px);
	this.Zf[w](b);
	b = new yu("Reader help", "http://www.google.com/support/reader/?hl=en");
	this.j(b, "action", this.er);
	this.Zf[w](b);
	_IS_DEBUG_IP && (b = new yu("Report a bug", "http://go/reader-file-bug"), this.j(b, "action", this.er), this.zh[w](b), b = new yu("Send feedback"), this.j(b, "action", this.dx), this.zh[w](b))
};
O.I = function (a) {
	a = Cm(a).L();
	for (var b = 0; b < this.Zf[F]; b++) a.Ea(this.Zf[b], j);
	if (0 < this.zh[F]) {
		a.Ea(new Au, j);
		for (b = 0; b < this.zh[F]; b++) a.Ea(this.zh[b], j)
	}
};

function RE(a, b) {
	Fh(a.tq[Nc](), function (c) {
		var d = c.S();
		d.Ek > b.Ek ? c.La(d[te] + " (on larger displays)") : c.La(d[te])
	})
}
O.px = function () {
	Ar(qr, "edit-extras");
	mr("gaia-bar-settings")
};
O.er = function (a) {
	n[xb](a[K].S(), "_blank")
};
O.dx = function () {
	iC({
		productId: "70977",
		locale: "en"
	})
};

function aF(a, b, c, d) {
	this.Nc = b;
	Yz[L](this, a, P(this.zv, this), c, d)
}
R(aF, Yz);
O = aF[G];
O.qo = function (a) {
	a = a[K].b();
	Ry(a[oe], a)
};

function bF(a) {
	a = a.d;
	var b, c = m;
	a && Qs(a, function (e) {
		c = e
	});
	if (!c) return b = ap(a) ? cF : a.Hc() ? dF : a instanceof mp ? eF : bp(a) ? fF : gF;
	if (a && Jo(a)) b = hF;
	else if (!a.K.Ha || !a.$b()) b = iF;
	else {
		var d = io(a);
		d[E] == lf ? (b = jF, tt(op, d, function (e) {
			b = 0 < e[F] ? kF : jF
		})) : b = d.W(Dp(Z)) ? lF : Xo(a, Vo(Z)) ? mF : nF
	}
	return b
}
O.ua = function (a) {
	this.d = a;
	this.Tg = bF(this);
	this.Tg == gF || this.Tg == nF || this.Tg == hF ? Jn(this.Ie, m) : (Jn(this.Ie, j), this.ih(), Zz(this) && V(this.lb, "highlight", this.qo, m, this))
};
O.ih = function () {
	var a = this.Tg.oy;
	u(Y(this.Ie, "goog-button-body"), a)
};
O.st = function () {
	var a = this.lb;
	aA(this);
	for (var b in this.Tg.dq) {
		var c = this.Tg.dq[b];
		if (c == oF) bA(this, j);
		else if (c == pF) a.M(new Au);
		else if (c == qF) a.M(rF(this));
		else {
			var d = new yu(c[te], c.Cg);
			d.Ki(c.Yr);
			c.Yr && (c = P(c.Sz, this), d.Li(c()));
			a.M(d)
		}
	}
	cA(this)
};

function rF(a) {
	var b = new zB("More like this...");
	S(b.L().b(), "related-streams-menu");
	Lj(b.L(), "show", P(a.pv, a, b.L()));
	return b
}
O.pv = function (a) {
	st(this.d, 5, P(this.qv, this, a))
};
O.qv = function (a, b) {
	if (0 < b[F])
		for (var c = 0, d; d = b[c]; c++) d = new yu(yk("div", {}, yk("span", {
			"class": "icon sub-icon"
		}), yk("span", {
			"class": "title"
		}, d[id])), Q(fq, d)), a.M(d);
	else c = new yu("No related sources found"), c.Ca(m), a.M(c)
};
O.zv = function (a) {
	if (a) {
		var b = this;
		nx(this.Nc, function (c) {
			xt(b.d[C], a, c)
		}, this.d)
	}
};
O.Bi = function () {
	fq(this.d, m)
};
O.as = function () {
	return "true" == vx.tb(this.d, Nf)
};
O.ep = function () {
	var a = this.as();
	vx.Kc(this.d, Nf, (!a)[bd]());
	sF(this.Nc, !a);
	this.Bi()
};
O.$r = function () {
	var a;
	Ut(function (b) {
		a = b
	});
	return this.d[C] == a
};
O.MA = function () {
	if (this.$r()) Tt(wf["default"], "Home");
	else {
		var a = this;
		nx(this.Nc, function (b) {
			Tt(a.d[C], b)
		})
	}
};
O.cn = function (a) {
	return ux(vx, this.d).id == a
};
O.Jo = function (a, b) {
	vx.Io(this.d, Ht[a]);
	b || this.Bi()
};
O.Az = function () {
	var a = this;
	nx(this.Nc, function (b) {
		var c = ds("What would you like to call this subscription?", b);
		jh(c) || c && c != b && xt(a.d[C], {
			sd: [],
			Rd: []
		}, c, function () {
			var d = a.d;
			d[C] in rp.ph && delete rp.ph[d[C]];
			sx(a.Nc)
		})
	}, this.d)
};
O.cB = function () {
	var a = this,
		b = this.d[C];
	nx(this.Nc, function (c) {
		vt(b, c, P(a.Bi, a))
	}, this.d)
};
O.wA = function () {
	var a = this;
	nx(this.Nc, function (b) {
		nt(a.d, b, function () {
			Rv[Mb]();
			a.Bi()
		})
	}, this.d)
};
O.Yv = function () {
	var a = this;
	nx(this.Nc, function (b) {
		(new AD(a.d, b))[Cb](function () {
			Rv[Mb]()
		})
	}, this.d)
};
O.Vv = function () {
	var a = new lD;
	a[vc]();
	a.gh(j);
	tF(a, this.d)
};
O.Gt = function (a) {
	var b = this,
		c = this.d[C],
		d = wp(To(c));
	a = ds(a ? "What would you like to call this folder?" : "What would you like to call this tag?", d);
	if (!jh(a)) {
		try {
			a = Tz(a)[0]
		} catch (e) {
			ja(e);
			return
		}
		a && a != d && (d = ko(Hp(Z, a)), a = wp(To(c)), (new uF(c, d, a))[Cb](function () {
			var g = b.d;
			g[C] in rp.ph && delete rp.ph[g[C]];
			sx(b.Nc)
		}))
	}
};
O.sq = function () {
	kt([this.d[C]])
};
O.bB = function () {
	var a = io(this.d),
		b = [],
		c = "";
	tt(op, a, function (d) {
		b = Hh(d, function (e) {
			return e.d[C]
		});
		1 == d[F] && (c = d[0].h)
	});
	vt(b, c, P(this.Bi, this))
};
O.kz = function () {
	var a = "/play/#" + $p.tp[Id]() + "/" + this.d[C],
		a = Qn(a);
	Uv(a, {
		target: "GoogleReaderPopup" + Ln()
	}) || ja("Grrr! A popup blocker may be preventing Google Reader from opening the page. If you have a popup blocker, try disabling it to open the window.")
};
O.qA = function () {
	(new vF(this.d)).kb()
};

function wF(a, b, c, d) {
	this.label = a || k;
	this.Cg = b || k;
	this.Yr = c || m;
	this.Sz = d || k
}
var xF = new wF("Set as start page", aF[G].MA, j, aF[G].$r),
	yF = new wF("Unsubscribe", aF[G].cB),
	zF = new wF("Rename subscription...", aF[G].Az),
	AF = new wF("Sort by magic", Q(aF[G].Jo, "auto"), j, Q(aF[G].cn, "auto")),
	BF = new wF("Sort by newest", Q(aF[G].Jo, "newest"), j, Q(aF[G].cn, "newest")),
	CF = new wF("Sort by oldest", Q(aF[G].Jo, "oldest"), j, Q(aF[G].cn, "oldest")),
	DF = new wF("Translate into my language", aF[G].ep, j, aF[G].as),
	EF = new wF("New folder...", aF[G].Ep),
	oF = new wF("Folder"),
	pF = new wF("Separator"),
	FF = new wF("Subscribe",
		aF[G].wA),
	GF = new wF("No thanks", aF[G].Yv),
	HF = new wF("Create a bundle", aF[G].Vv),
	IF = new wF("Rename tag", Q(aF[G].Gt, m)),
	JF = new wF("Rename folder", Q(aF[G].Gt, j)),
	KF = new wF("Delete tag", aF[G].sq),
	LF = new wF("Delete folder", aF[G].sq),
	MF = new wF("Unsubscribe from all", aF[G].bB),
	qF = new wF("Related"),
	NF = new wF("View in Reader Play", aF[G].kz),
	OF = new wF("View details and statistics", aF[G].qA);

function PF(a, b) {
	this.oy = a;
	this.dq = b;
	b[F] && b[w](pF, NF)
}
var iF = new PF("Feed settings...", [BF, CF, AF, pF, yF, zF, pF, DF, pF, OF, qF, oF, EF]);
new PF("Feed settings...", [BF, CF, AF, pF, DF]);
var lF = new PF("Folder settings...", [BF, CF, AF, pF, DF, pF, qF, HF]),
	kF = new PF("Folder settings...", [BF, CF, AF, pF, xF, pF, DF, pF, OF, qF, HF, JF, LF, MF]),
	jF = new PF("Folder settings...", [BF, CF, AF, pF, OF, DF, pF, HF, IF, KF]),
	mF = new PF("View settings...", [BF, CF, AF, pF, xF, pF, OF, DF]),
	cF = new PF("View settings...", [BF, CF, AF, pF, xF, pF, DF]),
	dF = new PF("Feed settings...", [FF, GF, pF, BF, CF, AF, pF, DF, OF, qF]),
	eF = new PF("Feed settings...", [BF, CF, AF, pF, xF, pF, DF]),
	fF = new PF("Feed settings...", [BF, CF, AF, pF, DF]),
	nF = new PF("State stream", []),
	hF = new PF("Search stream", []),
	gF = new PF("Not subscribed stream", []);

function QF(a) {
	IC[w](this);
	this.Hj = new Fl;
	this.Vb = this.$a = k;
	this.ac = {};
	this.Ig = {};
	this.mn = 0;
	this.Jg = new RF(this);
	this.bg = j;
	this.Cr();
	if (!a) {
		var b = this;
		xv(xr, function (c, d, e) {
			if (c[C] in b.ac) {
				c = b.ac[c[C]];
				for (var g = 0, h; h = c[g]; g++) {
					var l = d,
						r = e;
					if (!(h.df == l && h.vj == r)) {
						Ev(ME(h, "unread-count"), h.d, l, r);
						var t = ME(h, "name"),
							y = 0 < l;
						$h(t, "name-unread", y);
						$h(SF(h), "unread", y);
						Wa(t, h[nc]().rf + (y ? " " + Fv(l, r, {
							di: m
						}) : ""));
						xr.yr && (t = KE(h), S(t, "updated"), n[qd](Q(S, t, "updated-intermediate"), 700), n[qd](Q(T, t, "updated",
							"updated-intermediate"), 1E3));
						h.df = l;
						h.vj = r
					}
				}
			}
		})
	}
}
R(QF, KC);
O = QF[G];
O.load = function () {
	var a = this;
	this.rs(function (b, c) {
		a.ac = {};
		a.Ig = {};
		a.mn = 0;
		a.Sx = 0;
		a.lq(b, c);
		a[re]();
		a.Hj[A]({
			type: "refresh"
		});
		UE(a);
		DC && a.rh(DC)
	})
};
ob(O, function () {
	var a = this.se(),
		b = TF(this.$a);
	u(a, b);
	this.fl && this.Jg.ta(this.$a);
	this.Bw || (V(a, "click", this[A], m, this), V(a, "mouseover", this[A], m, this), this.Bw = j)
});
O.dispatchEvent = function (a) {
	for (var b = a[K], c = b; c && !(c.id in this.Ig);) c = c[oe];
	if (c) {
		var c = this.Ig[c.id],
			d = m;
		switch (a[E]) {
		case "click":
			d = UF(c, b);
			break;
		case "mouseover":
			a: {
				for (d = SF(c); b && b != d; b = b[oe]) {
					var e = Uh(b);
					if (0 != e[F])
						for (var g = 0, h; h = e[g]; g++) switch (h) {
						case "action":
							c.Br();
							d = j;
							break a
						}
				}
				d = m
			}
		}
		d && a[Zb]()
	}
};

function VF(a, b) {
	if (b == a.Vb) b[Ic]();
	else a.Vb && a.Vb.qg(), a.Vb = b, b[vc](), a.fl && -1 != a.Jg.Mb ? a.Jg.set(b) : WF(a, b)
}

function UE(a) {
	a.Vb && (a.Vb.qg(), a.Vb = k)
}
O.rh = function (a) {
	if (!a || !this.Vb || !this.Vb.d.W(a))
		if (a && a[C] in this.ac) {
			a = this.ac[a[C]];
			for (var b, c = 0, d; d = a[c]; c++) {
				for (var e = j, g = d.G; g; g = g.G)
					if (!g.Kb) {
						e = m;
						break
					}
				if (e) {
					b = d;
					break
				}
			}
			d = b || a[0];
			for (g = d.G; g; g = g.G) g.Kb || g.Mc();
			VF(this, d)
		} else this.Vb && UE(this)
};

function Ov(a, b) {
	a.aA = b;
	$h(a.se(), "scroll-tree-show-updated", !b);
	if (U)
		for (var c in a.Ig) {
			var d = SF(a.Ig[c]);
			Na(d[I], "left" == d[$d][Fc] ? "both" : "left")
		}
}

function WF(a, b) {
	var c = a.te(),
		d = KE(b);
	Kk(c, d) && Ry(c, d)
}
O.te = function () {
	var a = X("scrollable-sections");
	a || (a = this.se());
	return a
};

function XF(a, b, c) {
	this.Qb = a;
	this.uq = (this.G = b) ? b.uq + 1 : 0;
	this.Hb = c;
	this.Kb = j;
	this.df = 0;
	this.vj = m;
	this.pi = {};
	a.Ig[YF(this, "main")] = this;
	a.mn++
}
O = XF[G];
bb(O, function () {
	this.Q || (this.Q = this.Qb.vr + this.Qb.Sx++);
	return this.Q
});
O.getParent = function () {
	return this.G
};

function YF(a, b) {
	return a[Id]() + "-" + b
}

function ME(a, b) {
	b in a.pi || (a.pi[b] = X(YF(a, b)));
	return a.pi[b]
}

function SF(a) {
	return ME(a, "main")
}

function KE(a) {
	return ME(a, "link")
}

function UF(a, b) {
	for (var c = SF(a), d = b; d && d != c; d = d[oe]) {
		var e = Uh(d);
		if (0 != e[F])
			for (var g = 0, h; h = e[g]; g++) switch (h) {
			case "toggle":
				return a.Mc(), j;
			case "action":
				return j;
			case "name":
			case "name-text":
			case "unread-count":
			case "icon":
			case "link":
				return VF(a.Qb, a), j
			}
	}
	return m
}
O.Mc = function () {
	var a = SF(this);
	this.Kb ? Xh(a, "expanded", "collapsed") : Xh(a, "collapsed", "expanded");
	this.Kb = !this.Kb;
	vx.Td(this.d, this.Kb);
	this.Qb.fl && ZF(this.Qb.Jg)
};
Oa(O, function () {});
Ja(O, function () {
	S(SF(this), "tree-selected");
	S(KE(this), "tree-link-selected")
});
O.qg = function () {
	T(SF(this), "tree-selected");
	T(KE(this), "tree-link-selected")
};

function TF(a) {
	function b(l) {
		return [l, c.Hb + "-" + l, l + "-d-" + c.uq][N](" ")
	}
	var c = a;
	a.pi = {};
	a.df = a.xe();
	a.vj = a.cs();
	var d = 0 < a.df,
		e = d ? Fv(a.df, a.vj, {
			di: j
		}) : "",
		g = a[nc](),
		h = a.Hd();
	return $F({
		className: a.Hb,
		rA: So(a.d, j),
		children: h,
		Rx: a.G == k,
		fs: a.Xq(),
		Ce: a.Kb,
		bs: d,
		NA: 0 == h[F],
		aB: e,
		wu: k,
		iC: g.rf,
		displayName: g.Zl,
		Lq: a.Ew,
		LA: b("toggle"),
		tr: b("icon"),
		sy: b("name"),
		ty: b("name-text"),
		$A: b("unread-count"),
		BA: b("suffix-node"),
		VA: YF(a, "main"),
		UA: YF(a, "link"),
		Hu: YF(a, "icon"),
		WA: YF(a, "name"),
		YA: YF(a, "unread-count"),
		XA: YF(a,
			"suffix")
	})
}
O.xe = function () {
	return 0
};
O.cs = function () {
	return m
};
Fa(O, function () {
	return {
		Zl: this.Lb,
		rf: this.Lb
	}
});
O.Hd = function () {
	return []
};

function aG(a, b) {
	var c = a.Hd();
	if (c[F]) {
		Ph(b, c);
		for (var d = 0, e; e = c[d]; d++) aG(e, b)
	}
}
O.Xq = function () {
	return k
};
O.Br = function () {};

function bG(a, b, c, d) {
	XF[L](this, a, b, c);
	this.d = d;
	this.Kb = j;
	d[C] in a.ac || (a.ac[d[C]] = []);
	a.ac[d[C]][w](this)
}
R(bG, XF);
O = bG[G];
Oa(O, function () {
	fq(this.d)
});
Ja(O, function () {
	(!DC || !DC.W(this.d)) && fq(this.d);
	bG.a[vc][L](this)
});
O.xe = function () {
	var a = xr.hb(this.d);
	return a ? a.Zd : 0
};
O.cs = function () {
	var a = xr.hb(this.d);
	return a ? a.Ee : m
};
O.g = function () {
	return this.d
};

function cG(a, b, c, d) {
	bG[L](this, a, b, c, d);
	this.cu = j
}
R(cG, bG);

function dG(a, b) {
	aF[L](this, a, $, function () {
		S(b, "menu-open");
		mr(Vf)
	}, Q($h, b, "menu-open", m))
}
R(dG, aF);
dG[G].ih = function () {};
cG[G].Xq = function () {
	var a;
	this.cu ? (a = {
		TA: YF(this, "action")
	}, a = '<div class="tree-item-action-container"><div id="' + W(a.TA) + '" class="action tree-item-action section-button section-menubutton goog-menu-button"></div></div>') : a = k;
	return a
};
cG[G].Br = function () {
	this.cu && !this.z && (this.z = new dG(ME(this, "action"), KE(this)), this.z.ua(this.d))
};

function eG(a, b, c, d) {
	cG[L](this, a, c, d || "sub", b.d);
	this.Lb = b.h;
	if ("true" == cs(xf) && !jh(b.Yj)) {
		a = ef + "/favicons";
		try {
			a = bk(a, "domain", Xj(Vj(b.Yj)[3] || k))
		} catch (e) {}
		this.Ew = a = bk(a, "alt", "feed")
	}
}
R(eG, cG);
Fa(eG[G], function () {
	return this.Lb ? eG.a[nc][L](this) : {
		Zl: "<em>Untitled Subscription</em>",
		rf: "Untitled Subscription"
	}
});

function fG(a, b, c) {
	cG[L](this, a, c, "folder", Ao(b));
	this.Kb = vx.Ce(this.d);
	this.Ia = b;
	this.Lb = xp(b);
	this.la = []
}
R(fG, cG);
fG[G].Hd = function () {
	return this.Qb.bg ? gA(lA, this, this.la) : this.la
};
fG[G].Ea = function (a, b) {
	b ? this.la[ye](a) : this.la[w](a)
};

function VE(a, b, c) {
	cG[L](this, a, c, "tag", Ao(b));
	this.Ia = b;
	this.Lb = xp(b)
}
R(VE, cG);

function RF(a) {
	this.Qb = a;
	this.$a = k;
	this.Hf = [];
	this.Ge = {};
	this.Mb = -1
}
O = RF[G];
O.ta = function (a) {
	this.$a = a;
	ZF(this)
};

function ZF(a) {
	function b(h) {
		h != e.$a && (e.Hf[w](h), e.Ge[h[Id]()] = e.Hf[F] - 1);
		if (h.Kb) {
			h = h.Hd();
			for (var l = 0, r; r = h[l]; l++) b(r)
		}
	}
	var c = k;
	if (-1 != a.Mb) {
		for (var c = [], d = gG(a); d; d = d.G) c[w](d[Id]());
		hG(a, gG(a), m)
	}
	a.Hf = [];
	a.Ge = {};
	var e = a;
	b(a.$a);
	a.Mb = -1;
	if (c)
		for (d = 0; d < c[F]; d++) {
			var g = c[d];
			if (g in a.Ge) {
				a.Mb = a.Ge[g];
				d = a.Hf[a.Mb];
				hG(a, d, j, j);
				break
			}
		}
}

function hG(a, b, c, d) {
	var e = KE(b);
	$h(e, "cursor", c);
	c && !d && WF(a.Qb, b)
}
O.set = function (a) {
	a && a[Id]() in this.Ge && (-1 != this.Mb && hG(this, gG(this), m), this.Mb = this.Ge[a[Id]()], hG(this, a, j))
};
O.ef = function () {
	iG(this, 1)
};
O.qh = function () {
	iG(this, -1)
};

function iG(a, b, c) {
	var d = a.Mb;
	if (-1 == d) {
		var e = a.Qb.Vb;
		e && e[Id]() in a.Ge && (d = a.Ge[e[Id]()])
	}
	for (c = !a.Qb.aA || c;;) {
		d += b;
		if (0 > d || d >= a.Hf[F]) break;
		e = a.Hf[d];
		if (!c || 0 < e.df) {
			a.set(e);
			break
		}
	}
}
O.Mc = function () {
	var a = gG(this) || this.Qb.Vb;
	if (a)
		for (; a != this.$a;) {
			if (0 < a.Hd()[F]) {
				a.Mc();
				break
			}
			a = a.G
		}
};
O.lt = function () {
	VF(this.Qb, gG(this))
};

function gG(a) {
	return a.Hf[a.Mb]
}

function jG(a) {
	aB[L](this, a, 50);
	this.eq = !! this.li && j
}
R(jG, aB);
jG[G].Hl = function (a, b, c) {
	var d = 0,
		e = 0;
	a < b ? (d = -1, e = b - a) : a > b + c && (d = 1, e = a - (b + c));
	return d * s[Gb](40 * e / 50)
};

function kG(a, b, c) {
	WA[L](this, b, c);
	this.G = a
}
R(kG, WA);
kG[G].ym = function (a) {
	for (; a != k && !Zh(a, "link");) a = a[oe];
	return a
};

function lG(a) {
	NA[L](this);
	this.ff = [];
	this.Rk = k;
	this.nw = a
}
R(lG, ZA);
lG[G].M = function (a, b) {
	var c = new kG(this, a, b);
	$A(this, c)
};
lG[G].ZA = function (a) {
	for (var b = a[K]; b != k; b = b[oe])
		if (b[je] && "li" == b[je][Be]()) {
			a[Zb]();
			break
		}
};
lG[G].ta = function () {
	var a = this,
		b = qk("scrollable-sections"),
		c = qk("sub-tree");
	this.eh[w](new XA(b));
	this.ff[w](V(c, "mousedown", this.ZA, m, this));
	VA(this, function (e, g, h, l) {
		if (e && e[Kb] instanceof bG) return e[Kb].g().K.Ha && e[Kb].g().$b() ? l < g.top + (g[Zd] - g.top) / 4 ? "top" : !e[Kb].Kb && l > g.top + 3 * (g[Zd] - g.top) / 4 ? "bottom" : l < g.top + (g[Zd] - g.top) / 2 ? "upper-middle" : "lower-middle" : l < (g.top + g[Zd]) / 2 ? "top" : "bottom"
	});
	OA(this, this);
	var d = k;
	this.ff[w](V(a, "dragover", function (e) {
		if (e.gc[Kb] instanceof XF) {
			var g = e.yb[Kb].g().K.Ha &&
				e.yb[Kb].g().$b(),
				h = "upper-middle" == e.Wd || "lower-middle" == e.Wd,
				l = e.gc[Kb].G;
			if (Mv.bg) {
				if (!g || h || l.G == k)
					if (h = e.Wd, g && ("upper-middle" == e.Wd ? h = "top" : "lower-middle" == e.Wd && (h = "bottom")), !g || !(e.gc[Kb].Kb && "bottom" == h)) "bottom" == h ? S(e.gc[ke], "tree-drop-target-below") : "top" == h ? S(e.gc[ke], "tree-drop-target-above") : S(e.gc[ke], "tree-drop-target-in")
			} else g || l == k || (d = l.G == k ? e.gc[Kb] : l, S(KE(d), "tree-drop-target-in"))
		}
	}));
	this.ff[w](V(a, "dragout", function (e) {
		T(e.gc[ke], "tree-drop-target-above", "tree-drop-target-below",
			"tree-drop-target-in");
		d != k && (T(KE(d), "tree-drop-target-in"), d = k)
	}));
	this.ff[w](V(a, "dragstart", function (e) {
		S(e.yb[ke], "tree-flying-item");
		wl(e.yb[ke], 0.5);
		a.Rk = new jG(b)
	}));
	this.ff[w](V(a, "dragend", function (e) {
		T(e.yb[ke], "tree-flying-item");
		wl(e.yb[ke], 1);
		"filter" in e.yb[ke][I] && (e.yb[ke][I].filter = "");
		d != k && (T(KE(d), "tree-drop-target-in"), d = k);
		a.Rk.s()
	}));
	this.ff[w](V(a, "drop", function (e) {
		T(e.gc[ke], "tree-drop-target-above", "tree-drop-target-below", "tree-drop-target-in");
		a.nw(e)
	}));
	lG.a.ta[L](this)
};
lG[G].i = function () {
	Fh(this.ff, Oj);
	this.Rk && this.Rk.s();
	lG.a.i[L](this)
};

function Nv() {
	QF[L](this);
	this.vr = "sub-tree-item-";
	this.fl = j
}
R(Nv, QF);
O = Nv[G];
O.Cr = function () {
	var a = P(this[Mb], this);
	wr.ce(a);
	op.ce(a)
};
O.rs = function (a) {
	wr[wb](function () {});
	op.Qa(function () {});
	xr.Qa(function () {});
	var b = this;
	xr.Qa(function () {
		mG(vx, function () {
			wr[wb](function (c) {
				op.Qa(function (d) {
					var e = Ln();
					a(d, c);
					mr("render-tree-view-item", 1E3 * ((Ln() - e) / b.mn));
					FE()
				})
			})
		})
	})
};
O.lq = function (a, b) {
	for (var c = this.$a = new fG(this, gp(Z, "root"), k), d = {}, e = 0, g = [], h = {}, l = 0, r; r = b[l]; l++) h[ko(r)] = 1;
	var t = ko(Dp(Z));
	"true" != cs(yf) && (h[t] = 1);
	for (var l = 0, y; y = a[l]; l++) {
		var H = m;
		if (y.Ld)
			for (var Ha = 0; r = y.Ld[Ha]; Ha++) {
				var ga = ko(r);
				ga in h && (H = j, ga in d || (r = To(ga), d[ga] = new fG(this, r, c), e++), d[ga].Ea(new eG(this, y, d[ga])))
			}
		H || g[w](y)
	}
	for (l = 0; r = b[l]; l++) e = ko(r), e in d && c.Ea(d[e]);
	for (l = 0; y = g[l]; l++) c.Ea(new eG(this, y, c));
	for (l = 0; r = b[l]; l++) ko(r) in d || c.Ea(new VE(this, r, c));
	t in d && c.Ea(d[t])
};
O.se = function () {
	return X("sub-tree")
};
Oa(O, function () {
	xr[Ic]()
});
ob(O, function () {
	Nv.a[re][L](this);
	this.gf ? this.Ar() : Lj(this.se(), "mouseover", this.Ar, m, this);
	var a = JE(this);
	a && S(ME(a, "icon"), "following-folder-icon")
});
O.Ar = function () {
	this.gf && this.gf.s();
	var a = this;
	this.gf = new lG(function (e) {
		if (e.yb != e.gc) {
			var g = e.yb[Kb],
				h = e.gc[Kb],
				l = g.g().K.Ha && g.g().$b(),
				r = e.Wd;
			l && ("upper-middle" == e.Wd ? r = "top" : "lower-middle" == e.Wd && !e.gc[Kb].Kb && (r = "bottom"));
			var t = g.G;
			e = "upper-middle" == r || "lower-middle" == r ? h : h.G;
			var r = "bottom" == r,
				y = k;
			t == e ? a.bg && (kA(lA, e, g, h, r), l = zn("Saved changes to &quot;%1.&quot;", ph(g[nc]().rf)), br(l, cr, i, i), a[re]()) : t == a.$a ? l || (y = {
				sd: [e.Ia]
			}) : e == a.$a ? l || (y = {
				Rd: [t.Ia]
			}) : l || (y = {
				sd: [e.Ia],
				Rd: [t.Ia]
			});
			y && (a.bg &&
				kA(lA, e, g, h, r), xt(g.d[C], y, g[nc]().rf))
		}
	});
	this.Hj[A]({
		type: "newdraggroup",
		mw: this.gf
	});
	var b = [];
	aG(this.$a, b);
	nG(this, b);
	for (var c = 0, d; d = b[c]; c++) this.gf.M(KE(d), d);
	this.gf.ta()
};

function nG(a, b) {
	for (var c = a.se()[Tc]("a"), d = {}, e = 0, g; g = c[e]; e++) d[g.id] = g;
	for (e = 0; c = b[e]; e++) g = YF(c, "link"), c.pi.link = d[g]
}

function JE(a) {
	var b = Ao(Dp(Z));
	a = a.ac[b[C]];
	return !a || 0 == a[F] ? k : a[0]
}

function oG(a) {
	hx[L](this, a)
}
R(oG, hx);
oG[G].Ft = function () {
	function a() {
		ox($, a);
		tC($)
	}
	$.xg[w](a);
	$[Ic]()
};

function pG(a, b) {
	function c(e, g) {
		u(d(e), g);
		T(d(e + "-parent"), "hidden");
		T(d("preview-interruption-details"), "hidden")
	}
	var d = Q(Y, b);
	$.ba.wm(function (e) {
		jh(e) || c("preview-interruption-description", e)
	});
	qt($.g(), function (e) {
		e[Pd] && "-1" != e[Pd] && c("preview-interruption-subscribers", e[Pd]);
		e[gd] && 0 < pa(e[gd]) && c("preview-interruption-velocity", e[gd])
	}, i, j);
	st($.g(), 5, function (e) {
		for (var g = 0, h; h = e[g]; g++) {
			var l = yk("a", {
				"class": "stream"
			}, yk("span", {
				"class": "icon sub-icon"
			}), yk("span", {
				"class": "title"
			}, h[id]));
			Wr(l, h);
			d("related-streams")[v](l)
		}
		0 < e[F] && T(d("preview-interruption-related-streams"), "hidden")
	})
}

function qG() {
	hx[L](this, i)
}
R(qG, oG);
qG[G].jb = function (a, b) {
	b(rw(qx($)) && (!Qt() ? m : "true" == cs(uf)) && !ap(a))
};
qG[G].ya = function () {
	var a = this.A = sn('<div class="interruption small-interruption">As you view items in your reading list, they will be automatically marked as read as you scroll down (when in the "Expanded" view). If you\'d prefer to disable this feature, you can turn it off in<a href="" class="settings-link">Settings</a>.<span class="dismiss-link link">Dismiss</span></div>');
	zr(qr, Y(a, "settings-link"), "edit-extras", P(this.Rc, this));
	Lj(Y(a, "dismiss-link"), "click", this.Rc, m, this);
	return a
};
qG[G].Rc = function () {
	Et(uf, m[bd]());
	Hk(this.A)
};

function rG() {
	hx[L](this, i)
}
R(rG, oG);
rG[G].jb = function (a, b) {
	Ot(function (c) {
		b(c && "true" == cs(tf) && "oldest" == ux(vx, $.g()).id)
	})
};
rG[G].ya = function () {
	var a = "Sort by oldest only shows items from the last 30 days." + ('<a target="_blank" class="learn-more-link" href="' + W("http://www.google.com/support/bin/answer.py?hl=en&answer=69980") + '">Learn more</a><span class="dismiss-link link">Dismiss</span>'),
		a = this.A = sn('<div class="interruption small-interruption">' + a + "</div>");
	Lj(Y(a, "dismiss-link"), "click", this.Rc, m, this);
	return a
};
rG[G].Rc = function () {
	Et(tf, m[bd]());
	Hk(this.A)
};

function sG() {
	hx[L](this, i);
	this.Bj = j
}
R(sG, oG);
sG[G].ya = function () {
	var a = $.g(),
		b = this,
		c = tG(function () {
			nx($, function (d) {
				d = new ot(a[C], d);
				d.$e[w](["source", "SUBSCRIBE_BUTTON"]);
				d[Cb](P(b.Ft, b))
			})
		}, j, a.K.Ha ? "shared" : "feed");
	pG(this, c);
	return c
};
sG[G].jb = function (a, b) {
	a.Hg() ? a.K == po ? b(m) : Qs(a, function (c) {
		b(!c && !a.Hc() && !ap(a) && !bp(a))
	}) : b(m)
};

function uG() {
	hx[L](this, i)
}
R(uG, oG);
O = uG[G];
O.ya = function () {
	var a = tG(P(this.yA, this), j, "rec");
	V(Y(a, "preview-interruption-back"), "click", this.Rc, m, this);
	pG(this, a);
	(new vG($.g()))[Cb]();
	return a
};
O.yA = function () {
	var a = this;
	nx($, function (b) {
		nt($.g(), b, P(a.uA, a))
	})
};
O.uA = function () {
	Rv[Mb]();
	this.Ft()
};
O.Rc = function () {
	nx($, function (a) {
		(new AD($.g(), a))[Cb](function () {
			Rv[Mb]();
			Cv[vc](2)
		})
	})
};
O.jb = function (a, b) {
	a.Hg() ? a.K == po ? b(m) : Qs(a, function (c) {
		b(!c && a instanceof cp)
	}) : b(m)
};

function wG() {
	hx[L](this, i);
	this.Bj = j
}
R(wG, oG);
wG[G].jb = function (a, b) {
	function c(e) {
		return e && e.g().W(Ao(Dp(Z)))
	}
	var d = Mv.Vb;
	d ? b(c(d) || c(d[vb]())) : b(m)
};
wG[G].ya = function () {
	return sn('<div class="interruption small-interruption">The blogs you follow in Blogger have been added as subscriptions in Google Reader. You can manage the blogs you follow using the <a target="_blank" href="http://www.blogger.com/manage-blogs-following.g">Blogger dashboard</a>. <a target="_blank" href="http://help.blogger.com/bin/answer.py?answer=99761">Learn more</a></div>')
};

function xG() {
	hx[L](this, i)
}
R(xG, oG);
xG[G].jb = function (a, b) {
	b(a.K == xo)
};
xG[G].ya = function () {
	var a = sn('<div class="interruption preview-interruption bundle-interruption"><div class="widget-container"></div><div class="subscribe-text"><div class="not-subscribed-text">You are <b>not subscribed</b> to this bundle yet.</div><div class="not-subscribed-additional-help">A bundle is a collection of blogs and websites on a particular topic or interest. <br>If you\'d like to automatically receive updates to the feeds in this bundle, you can subscribe now.</div><div class="not-subscribed-additional-help">' + eD({
		Ga: "bundle-subscribe-button",
		content: '<span class="subscribe-button">Subscribe</span>'
	}) + '<a class="preview-interruption-back">&laquo; Back to bundles</a></div><div class="subscribed-text">You are already subscribed to this bundle.</div></div></div>');
	gD($.g()[C], m, j, function (b) {
		b && (b.de(Y(a, "widget-container")), b.Lr && S(a, "subscribed"), b.$b() && S(a, "user-owned"), V(Y(a, "bundle-subscribe-button"), "click", P(b.tu, b, function () {
			S(a, "subscribed")
		})), Tv(Cv, Y(a, "preview-interruption-back"), 0))
	});
	return a
};

function yG() {
	hx[L](this, i);
	this.Bj = j
}
R(yG, oG);
yG[G].jb = function (a, b) {
	if (Jo(a)) {
		var c = this;
		Xs(function (d) {
			"true" == cs(Af) ? (c.Nb = a.gb(), b(d)) : b(m)
		})
	} else b(m)
};
yG[G].ya = function () {
	var a = this.A = zG({
		query: this.Nb
	}),
		b = this;
	Lj(Y(a, "try-search-on-feeds-link"), "click", function () {
		(new rC(b.Nb))[vc]()
	});
	Os(Q(Jn, Y(a, "dismiss-link", "span")));
	Lj(Y(a, "dismiss-link", "span"), "click", this.Rc, m, this);
	return a
};
yG[G].Rc = function () {
	Et(Af, m[bd]());
	Hk(this.A)
};

function AG() {
	hx[L](this, i)
}
R(AG, oG);
AG[G].jb = function (a, b) {
	b(ap(a) && "true" == cs(Jf))
};
AG[G].ya = function () {
	var a;
	Xs(function (c) {
		a = c
	});
	var b;
	b = this.A = BG({
		uy: a
	});
	Lj(Y(b, "dismiss-link"), "click", this.Rc, m, this);
	return b
};
AG[G].Rc = function () {
	Et(Jf, m[bd]());
	Hk(this.A)
};

function vF(a) {
	this.d = a;
	a = new xy("stream-details-dialog modal-dialog", j);
	a.La(X("viewer-details-template")[Qb]);
	Cy(a, "Details and statistics");
	Jy(a, k);
	a.Cj = j;
	a.oa();
	ZB(a, "");
	this.cb = a
}
vF[G].kb = function () {
	Cr();
	mr("viewer-details-link");
	qt(this.d, P(this.Mq, this, m), P(this.Mq, this, j))
};
vF[G].Mq = function (a, b) {
	fr();
	if (a || b.streamDetailsError || (!b[Pd] || "-1" == b[Pd]) && !b[gd] && "-1" == b.successfulCrawlTimeUsec && "-1" == b.failedCrawlTimeUsec) br("Details and statistics could not be loaded", er, i, i);
	else {
		var c = b.feedUrl,
			d;
		if (c)
			if (d = ph(c), d == k) d = k;
			else
				for (var e = 0, g; g = "/.&" [e]; e++) d = d[td](g)[N]("<wbr></wbr>" + g);
			else d = k;
		c = {
			gw: d,
			feedUrl: c,
			subscribers: b[Pd],
			velocity: b[gd],
			vu: b.successfulCrawlTimeUsec,
			AA: Vy(b.successfulCrawlTimeUsec),
			Kq: b.failedCrawlTimeUsec,
			Dw: Vy(b.failedCrawlTimeUsec),
			lastFailureWasParseFailure: b.lastFailureWasParseFailure
		};
		d = '<table class="viewer-details-stats">';
		c.feedUrl && (d += '<tr><td class="label">Feed URL:</td><td class="value"><a href="' + W(c.feedUrl) + '" target="_blank">' + c.gw + "</a></td></tr>");
		c[gd] && "0.0" != c[gd] && (d += '<tr><td class="label">Posts per week:</td><td class="value">' + W(c[gd]) + "</td></tr>");
		c[Pd] && "-1" != c[Pd] && (d += '<tr><td class="label">Subscribers:</td><td class="value">' + W(c[Pd]) + "</td></tr>");
		if (-1 != c.vu || -1 != c.Kq) d += '<tr><td class="label">Last updated:</td><td class="value">', c.vu > c.Kq ? d += W(c.AA) :
			(d += W(c.Dw) + " ", d = c.lastFailureWasParseFailure ? d + "A parsing error was encountered." : d + "A fetching error was encountered.", d += '  <a href="' + W("http://www.google.com/support/bin/answer.py?hl=en&answer=97875") + '" target="_blank">Learn more.</a>'), d += "</td></tr>";
		c = sn(d + "</table>");
		Y(this.cb.O(), "viewer-details-stats-container")[v](c);
		c = Zy(this.cb.O())[0];
		Yy(c, 0, b.trendsCharts.dayChart);
		Yy(c, 1, b.trendsCharts.hourChart);
		Yy(c, 2, b.trendsCharts.dowChart);
		this.cb.D(j)
	}
};

function tG(a, b, c) {
	b = {
		Nx: b,
		bC: "feed" == c,
		fi: "shared" == c,
		Hc: "rec" == c
	};
	c = '<div class="interruption preview-interruption"><div class="preview-interruption-related-streams hidden"><h3 class="header">More like this...</h3><div class="related-streams"></div></div><div class="interruption-header">';
	c = b.fi ? c + "These items are being shared in Google Reader." : b.Hc ? c + "You are not subscribed to this recommended feed yet." : c + "You are not subscribed to this feed yet.";
	c += "</div><p>";
	c = b.fi ? c + "Subscribe in Reader to keep up with newly shared items." :
		c + "If you'd like to automatically receive updates to this feed, you can subscribe now.";
	var d = '<span class="subscribe-button"> ',
		d = b.Nx ? d + "Subscribe" : d + "Sign in to subscribe";
	c = c + '</p><div class="preview-interruption-details hidden"><div class="preview-interruption-description-parent hidden"><b>Description:</b> <span class="preview-interruption-description"></span></div><div class="preview-interruption-subscribers-parent hidden"><b>Subscribers:</b> <span class="preview-interruption-subscribers"></span></div><div class="preview-interruption-velocity-parent hidden"><b>Posts per week:</b> <span class="preview-interruption-velocity"></span></div></div>' +
		eD({
			Ga: "preview-subscribe-button",
			content: d + "</span>"
		});
	b.Hc && (c += '<div class="link preview-interruption-back">No thanks</div>');
	b = sn(c + "</div>");
	nb(Y(b, "preview-subscribe-button"), a);
	return b
}

function mE(a) {
	bw[L](this, a, ng)
}
R(mE, bw);
O = mE[G];
O.ya = function () {
	this.B = Ck("span", "email");
	var a = Ck("span", "link unselectable");
	u(a, "Email");
	this.B[v](a);
	V(this.B, "click", this[$c], m, this);
	return this.B
};
O.s = function () {
	Mj(this.B, "click", this[$c], m, this);
	mE.a.s[L](this)
};
O.Rm = function () {
	Fh(this.X, Oj);
	for (var a = 0, b; b = this.uc[a]; a++) b();
	T(this.B, "email-active");
	this.Re.Bf()
};
O.eu = function () {
	this.xa = this.Re.Oo(CG({
		userName: _USER_NAME,
		userEmail: na
	}), this);
	var a = this.Re.uf(),
		a = a ? DG(In(vh(a))) : "";
	za(Y(this.xa, "email-this-subject"), a);
	S(this.B, "email-active");
	var a = Y(this.xa, "email-this-to"),
		b = Y(this.xa, "email-this-cancel"),
		c = Y(this.xa, "email-this-send");
	this.X = [];
	this.X[w](V(b, "click", this.$, m, this));
	this.X[w](V(c, "click", this.Tt, m, this));
	var d = P(this.Xc, this),
		e = P(this.Tt, this);
	this.uc = [];
	this.uc[w](Qq(13, b, d, i));
	this.uc[w](Qq(32, b, d));
	this.uc[w](Qq(13, c, e, i));
	this.uc[w](Qq(32,
		c, e));
	a[qc]();
	EG(a);
	Ry(kx($), this.xa)
};
O.Xc = function (a) {
	a && (a[Zb](), a[wd]());
	this.$()
};
O.Tt = function (a) {
	a && (a[Zb](), a[wd]());
	var b = new Zq,
		c = Y(this.xa, "email-this-to-error"),
		d = Y(this.xa, "email-this-subject-error"),
		e = Y(this.xa, "email-this-comment-error");
	S(c, "hidden");
	S(d, "hidden");
	S(e, "hidden");
	ir(b, function () {
		br("Your email could not be sent", er, i, i);
		es(b[Eb], {
			emailTo: Q(fs, c),
			subject: Q(fs, d),
			comment: Q(fs, e)
		})
	});
	var g = this;
	hr(b, function () {
		br("Your email has been sent", cr, i, i);
		g.$()
	});
	b.Ic("/email-this", Mn([
		["i", this.o[Id]()],
		["emailTo", Y(this.xa, "email-this-to")[Yb]],
		["comment",
			Y(this.xa, "email-this-comment")[Yb]
		],
		["subject", Y(this.xa, "email-this-subject")[Yb]],
		["ccMe", Y(this.xa, "email-this-ccme")[pd][bd]()]
	]));
	Ws(this.o, "tracking-emailed")
};

function nE(a) {
	Xv[L](this, a);
	this.z = new Wz;
	this.Cs = m;
	this.zi = new FG;
	GG(this.zi)
}
R(nE, Xv);
var HG = /\$\{short-url\}/;
O = nE[G];
O.ya = function () {
	this.X = [];
	if (!IG(this.zi)) return Ck("span");
	this.If = yk("span", "entry-link-action-title");
	this.If[v](q[Vb]("Send to"));
	this.Kp = Ck("div", "item-link-drop-down-arrow");
	this.B = yk("span", "item-link link unselectable");
	this.B[v](Ck("wbr"));
	this.B[v](this.If);
	this.B[v](this.Kp);
	this.z.td(this.B, Cu.ql, Cu.tl);
	this.z.ap = j;
	this.z.oa(q[J]);
	this.X[w](V(this.z, "action", this.Qy, m, this));
	this.X[w](V(this.z, "hide", this.Sy, m, this));
	this.X[w](V(this.z, "show", this.Ty, m, this));
	Lj(this.z, "beforeshow", this.lz,
		m, this);
	this.Ln = this.In = m;
	this.X[w](V(this.B, "mouseover", this.Wy, m, this));
	this.X[w](V(this.B, "mouseout", this.Vy, m, this));
	JG(this);
	return this.B
};
O.s = function () {
	Fh(this.X, Oj);
	this.z.s()
};
Ta(O, function () {
	Ry(kx($), this.B);
	var a = this.B;
	Xz(this.z, new Ku(a, Cu.ql, j), Cu.tl, k, a)
});
O.Sy = function () {
	T(this.B, "item-link-active");
	this.In = m;
	JG(this)
};
O.Ty = function () {
	S(this.B, "item-link-active");
	this.In = j;
	JG(this)
};
O.Wy = function () {
	this.Ln = j;
	JG(this)
};
O.Vy = function () {
	this.Ln = m;
	JG(this)
};

function JG(a) {
	$h(a.Kp, "item-link-drop-down-arrow-active", a.Ln || a.In)
}

function KG(a, b, c) {
	gi(c, function (d, e) {
		b = b[z](va("\\$\\{" + e + "\\}", "g"), d)
	});
	return b
}

function LG(a, b, c, d, e) {
	function g() {
		var t = HG;
		return ma(b[kc](t)) || ma(c) && ji(c || {}, function (y) {
			return y[kc](t)
		})
	}
	if (!Lg(d) && g()) {
		var h = Vv("Shortening URL...", {
			target: "_blank"
		});
		h || ja("Grrr! A popup blocker may be preventing Google Reader from opening the page. If you have a popup blocker, try disabling it to open the window.");
		Cr();
		Ir(a.o, function (t) {
			fr();
			LG(a, b, c, t, h)
		}, function () {
			fr();
			LG(a, b, c, a.o.zc("alternate"), h)
		})
	} else {
		var l = {
			body: a.o.vd || "",
			url: a.o.zc("alternate") || "",
			"item-id": a.o[Id](),
			"source-stream-id": a.o.cc.d[C],
			"escaped-title": a.Re.uf() || "",
			"escaped-source": hw(a.Re),
			title: vh(a.Re.uf() || ""),
			source: vh(hw(a.Re)),
			"short-url": d || ""
		};
		if (c) {
			var r = ii(c, function (t) {
				return KG(this, t, l)
			}, a);
			e = Ck("form", {
				method: "post",
				action: b,
				target: "_blank",
				style: "position: absolute; top: -100px; left: -100px;"
			}, Hh(li(r), function (t) {
				return Ck("input", {
					type: "hidden",
					name: t,
					value: r[t]
				})
			}));
			a.B[v](e);
			e.submit();
			Hk(e)
		} else l = ii(l, nh), d = KG(a, b, l), e ? jb(e[yd], d) : k == Uv(d, {
			target: "_blank"
		}) && ja("Grrr! A popup blocker may be preventing Google Reader from opening the page. If you have a popup blocker, try disabling it to open the window.");
		Ws(a.o, "tracking-custom-item-link")
	}
}
O.Qy = function (a) {
	a = a[K].S();
	LG(this, a.url, a.oz)
};
O.lz = function () {
	if (!this.Cs) {
		var a = this;
		GG(this.zi, function () {
			Fh(Sh(Oh(a.zi.Ul), MG(a.zi)), function (b) {
				if (b.Sc && Sn(b.url)) {
					var c = yk("span", {
						"class": "item-link-menuitem"
					});
					b.ib && Sn(b.ib) ? c[v](yk("img", {
						src: b.ib,
						alt: "",
						"class": "item-link-menuitem-image"
					})) : c[v](yk("div", "item-link-menuitem-spacer"));
					c[v](q[Vb](b[Lc]));
					c = new yu(c);
					c.Ta(b);
					a.z.M(c)
				}
			});
			a.Cs = j
		})
	}
};

function NG(a) {
	bw[L](this, a, pg)
}
R(NG, bw);
NG[G].ya = function () {
	this.B = Ck("span", "tag link unselectable");
	this.X = [];
	this.If = Ck("span", "entry-tagging-action-title");
	OG(this);
	this.X[w](V(this.If, "click", this[$c], m, this));
	this.B[v](this.If);
	this.jp = PG(this);
	this.B[v](this.jp);
	return this.B
};
NG[G].s = function () {
	Fh(this.X, Oj);
	this.jk && this.jk.s();
	NG.a.s[L](this)
};

function QG(a) {
	return Y(a.xa, "tags-edit-tags")
}
NG[G].Jz = function () {
	function a(e) {
		for (var g = [], h = 0; h < e[F]; h++) g[w](Hp(Z, e[h]));
		return g
	}
	try {
		var b = Tz(QG(this)[Yb])
	} catch (c) {
		ja(c);
		return
	}
	b = sp(RG(this), b);
	this.$();
	var d = this;
	Hs(this.o, a(b.sd), a(b.Rd), i, function () {
		OG(d);
		var e = d.jp,
			g = PG(d);
		e[oe][Bb](g, e);
		d.jp = g
	})
};

function SG(a) {
	var b = QG(a),
		c = RG(a);
	za(b, c[F] ? c[N](", ") + ", " : "");
	b[qc]();
	cz(b, b[Yb][F]);
	a.jk = Uz(b)
}

function RG(a) {
	a = Vs(a.o);
	for (var b = [], c = 0; c < a[F]; c++) b[w](a[c][nc]());
	return b
}

function OG(a) {
	var b = a.If;
	u(b, "");
	b[v](un(0 < Vs(a.o)[F] ? "Edit tags: " : "Add tags"))
}

function PG(a) {
	for (var b = Vs(a.o), c = Ck("ul", "user-tags-list"), d = j, e = 0, g; g = b[e]; e++) {
		var h = sn('<li><a href="">' + W(g[nc]()) + "</a></li>");
		a.X[w](Wr(h[Tc]("a")[0], Ao(g), k, j));
		d ? d = m : h[$b](un(", "), h[uc]);
		c[v](h)
	}
	return c
}
var TG = m,
	UG = k;

function oE(a) {
	NG[L](this, a)
}
R(oE, NG);
oE[G].eu = function () {
	n[qd](P(this.cA, this), 1)
};
oE[G].cA = function () {
	VG(this);
	var a = QG(this),
		b = vl(this.xa),
		c = kl(a).y,
		a = kx($),
		d = vl(a),
		e = vl(this.If),
		c = e.top - (c - b.top) - d.top + a[Zc],
		e = e[B] + e[x] - d[B];
	e + b[x] > d[x] && (e = d[x] - b[x]);
	this.xa[I].top = c + "px";
	Ca(this.xa[I], e + "px");
	T(this.xa, "invisible");
	SG(this);
	Ry(a, this.xa);
	TG || (TG = j, Pq(function () {
		return UG ? UG.xa : k
	}, P(this.$, this)));
	UG = this
};
oE[G].Rm = function () {
	Hk(this.xa);
	UG = this.xa = k;
	Fh(this.um, Oj);
	for (var a = 0, b; b = this.uc[a]; a++) b()
};

function VG(a) {
	var b = a.xa = sn('<div class="tags-edit"><input type="text" class="tags-edit-tags" autocomplete="off"><div class="help">Separate tags by commas</div><div class="tags-edit-buttons">' + eD({
		Ga: "tags-edit-save",
		content: "Save"
	}) + eD({
		Ga: "tags-edit-cancel",
		content: "Cancel"
	}) + "</div></div>");
	S(b, "invisible");
	var c = P(a.Jz, a),
		d = P(a.$, a),
		e = P(a.Pv, a);
	a.um = [];
	a.uc = [];
	var g = QG(a);
	a.uc[w](Qq(13, g, c, e));
	a.uc[w](Qq(27, g, d, e));
	e = Y(b, "tags-edit-save");
	a.uc[w](Qq(13, e, c, i));
	a.um[w](V(e, "click", c));
	c = Y(b, "tags-edit-cancel");
	a.uc[w](Qq(13, c, d, i));
	a.um[w](V(c, "click", d));
	jx($)[v](b)
}
oE[G].Pv = function () {
	return !this.jk || !this.jk.C.F()
};

function lE(a) {
	Xv[L](this, a, mg)
}
R(lE, Xv);
lE[G].ya = function () {
	this.B = Ck("span", "sharebox link", Ck("span", "link unselectable", "Share"));
	this.Jf = V(this.B, "click", this[$c], m, this);
	return this.B
};
Ta(lE[G], function () {
	DA({
		items: [HD(this.o)]
	}, {
		hl: "en",
		sessionIndex: aa,
		sourceId: "s:reader",
		sourceForLogging: "sharebox:google:reader",
		onShareClosed: function () {
			mr("item-sharebox", i, 1)
		}
	})
});
lE[G].jb = function () {
	return lE.a.jb[L](this) && !jh(Hr(this.o))
};
lE[G].s = function () {
	this.Jf && Oj(this.Jf)
};
var WG = "0 new items;1 new item;2 new items;3 new items;4 new items;5 new items;6 new items;7 new items;8 new items;9 new items;10 new items".split(";");

function XG(a) {
	ix[L](this);
	this.ev = 1;
	this.$u = 10;
	this.ab = a;
	this.ki = 100
}
R(XG, ix);
O = XG[G];
O.ua = function () {
	XG.a.ua[L](this)
};
mb(O, function () {
	this.po(0);
	var a = YG(this);
	S(a, "hidden");
	Hk(a);
	this.Rf = new Di;
	XG.a[me][L](this);
	jx(this)[v](a);
	this.Hk = 0;
	this.Gk = -1
});
O.zf = function (a, b) {
	XG.a.zf[L](this, a, b);
	this.Jh == b[Id]() && (this.Jh = k, this.Hk = a, this.Gk = a - 1, ZG(this, a), rw(qx(this)) && n[qd](P(this.Pk, this, i), 200))
};
O.dm = function () {
	XG.a.dm[L](this);
	this.Jh && this.Nm ? 100 > this.ea[F] ? (this.Gg = j, gx(this.Yg)) : this.Jh = k : this.us()
};
O.qh = function (a) {
	!this.va && this.vb && (0 >= this.da || ZG(this, this.da - 1, a))
};
O.te = function () {
	return this.vb ? kx(this) : k
};
O.Qs = function (a) {
	if (this.te()) {
		var b = this.ab;
		a = a ? 30 : -30;
		$G(b) && ($G(b).scrollTop += a)
	}
};
O.Le = function (a) {
	if (this.te()) {
		var b = aH(this.ab) - 50,
			c = this.ab;
		a = a ? +b : -b;
		$G(c) && ($G(c).scrollTop += a)
	}
};
O.Sq = function (a) {
	this.te() && (a ? bH(this.ab, $G(this.ab) ? $G(this.ab)[sc] : 0) : bH(this.ab, 0))
};
O.iu = function (a) {
	if (this.va) this.Le(a);
	else if (this.vb)
		if (-1 == this.da) a && this.ef();
		else {
			var b = wx(this).A,
				c = b[ue],
				b = c + b[xe],
				d = cH(this.ab),
				e = aH(this.ab);
			a && b <= d + e || !a && c >= d ? a ? this.da >= this.ea[F] - 1 ? this.ju() : this.ef() : this.qh() : this.Le(a)
		}
};
O.ju = function () {};
O.ef = function (a) {
	!this.va && this.vb && (this.da >= this.ea[F] - 1 || ZG(this, this.da + 1, a, m, 2))
};

function ZG(a, b, c, d, e) {
	a.da != b && (qx(a).Iq || (c = j), a.da = b, d ? dH(a) : c ? a.Pk() : eH(a, a.da, e))
}
O.Pk = function (a) {
	var b = kx(this),
		c = wx(this).A;
	"true" == cs(Bf) || rw(qx(this)) ? (dH(this), this.po(c[ue] - 5)) : (dH(this), Ry(b, c, a))
};
O.po = function (a) {
	if (cH(this.ab) != a) {
		this.hn = j;
		this.Lz = a;
		var b = this;
		n[qd](function () {
			b.hn = m
		}, 2E3);
		bH(this.ab, a)
	}
};
O.Nu = function () {
	var a = cH(this.ab);
	if (this.hn && a == this.Lz) this.hn = m;
	else if (!this.va && rw(qx(this)))
		if (0 == a && this.vb) this.da = 0, dH(this);
		else
			for (var b = aH(this.ab), c = a + b, d = 0, e; e = this.ea[d]; d++) {
				var g = this.ea[d + 1];
				e = e.A[ue];
				var h = g ? g.A[ue] - 1 : c,
					g = e >= a && h <= c,
					h = s.min(h, c) - s.max(e, a) >= b / 2;
				if (g || h) {
					this.da != d && (this.da = d, dH(this));
					break
				}
				if (e > c) {
					a = s.max(d - 1, 0);
					this.da != a && (this.da = a, dH(this));
					break
				}
			}
};
O.gB = Rn(150, XG[G].Nu);

function fH(a, b) {
	b.pm();
	a.Rf.add(b)
}
O.iB = function () {
	function a(t) {
		t = b.ea[t];
		var y = t.A,
			H = y[ue],
			y = H + tl(y)[M];
		if (!b.Rf[ge](t))
			if (y >= l && H <= r) fH(b, t);
			else return m;
		return j
	}
	var b = this,
		c = wx(this);
	if (c) {
		var d = tl(kx(this))[M],
			e = d * this.ev,
			g = c.A[ue],
			h = g + tl(c.A)[M],
			l = s.max(g - e, 0),
			r = h + d + e,
			d = this.Rf.ub();
		Fh(d, function (t) {
			var y = t.A,
				H = y[ue];
			if (H + tl(y)[M] < l || H > r) y = b, t.bq(), y.Rf[pc](t)
		});
		this.Rf[ge](c) || fH(this, c);
		c = this.ea[F];
		for (d = this.da - 1; 0 <= d && !(e = a(d), !e); --d);
		for (d = this.da + 1; d < c && !(e = a(d), !e); ++d);
	}
};
O.Gq = function (a) {
	rw(qx(this)) && (a.Vq() < this.$u && !this.Rf[ge](a)) && (a.pm(), this.Rf.add(a))
};
O.Eq = function () {
	this.Nu()
};
O.jB = Rn(150, XG[G].iB);

function dH(a) {
	var b = X("current-entry");
	b && (b.id = "");
	if (b = wx(a)) {
		a.jB();
		if (Qt() && qx(a) == sw.eg && a.qz != b) {
			var c = a.da;
			if (c < a.Hk) {
				for (var d = c; d < a.Hk; d++) gw(a.ea[d]);
				a.Hk = c
			}
			if (c > a.Gk) {
				for (d = a.Gk + 1; d <= c; d++) gw(a.ea[d]);
				a.Gk = c
			}
		}
		b.A.id = "current-entry";
		a.qz = b
	}
}
O.us = function () {
	this.ii && n[Db](this.ii);
	var a = this;
	this.ii = n[qd](function () {
		a.ii = k;
		if (a.Nm && !a.va && !a.Gg)
			if (a.da >= a.ea[F] - 5) a.Gg = j, gx(a.Yg);
			else {
				for (var b = aH(a.ab), c = cH(a.ab) + b, d = $G(a.ab) ? $G(a.ab)[sc] : 0, e = 0, g = 0, h; h = a.dk[g]; g++) e += h[xe];
				c = d - e - c;
				d = qx(a) == sw.eg ? 2 : 0.5;
				c <= b * d && (a.Gg = j, gx(a.Yg))
			}
	}, 200)
};

function eH(a, b, c) {
	-1 != a.ug && a.ea[a.ug][Fb]();
	a.ug = a.da = b;
	b = wx(a);
	b.expand();
	gw(b);
	a.Pk(c)
}
O.Mc = function () {
	var a = qx(this);
	this.g() && (a.Xr || a.Zr) ? -1 != this.da && (a == sw.dc ? wx(this).Jm() : WD()) : !this.va && (this.vb && a != sw.eg) && (this.da != this.ug ? -1 != this.da && eH(this, this.da) : (-1 != this.da && (wx(this)[Fb](), this.Pk(), gH(this)), this.ug = -1))
};

function gH(a) {
	if (U) {
		var b = jx(a);
		b[I].styleFloat = "left";
		n[qd](function () {
			b[I].styleFloat = "none";
			b = k
		}, 1)
	}
}
O.Wp = function (a) {
	a = this.ki + a;
	var b = "magnification" + this.ki;
	T(q[J], b);
	this.ki = s.min(s.max(a, 100), 150);
	$h(q[J], "magnification-active", 100 < this.ki);
	b = "magnification" + this.ki;
	S(q[J], b)
};
O.Zn = function () {
	this.ii && n[Db](this.ii)
};

function YG(a) {
	a.Nq || (a.Nq = X("scroll-filler"));
	return a.Nq
}

function SE(a) {
	var b = qx(a) == sw.eg || a.g() && Jo(a.g()) || a.g() && ep(a.g());
	return !a.va && b && a.ea && a.ea[F] && !a.Nm
}

function TE(a) {
	var b = a.ea[a.ea[F] - 1],
		c = YG(a);
	T(c, "hidden");
	a = aH(a.ab);
	b = b.A[xe];
	pb(c[I], (b < a ? a - b : 0) + "px")
}
O.Ir = function (a) {
	jx(this)[$b](a, YG(this))
};
O.hp = function (a, b) {
	XG.a.hp[L](this, a, b);
	!b && (this.vb && 0 < a && SE(this)) && TE(this)
};
O.Lg = function () {
	!this.va && this.vb && wx(this).Lg()
};
O.Ou = function (a, b) {
	this.il.La(a < WG[F] ? WG[a] : zn("%1 new items", a + (b ? "+" : "")));
	this.np.ag()
};

function hH(a, b) {
	for (var c = a.mp[F] - 1; 0 <= c; --c) {
		var d = a.mp[c];
		d.tB == b.Lb && a.gl.Lc(d)
	}
}

function iH(a, b) {
	function c(h, l, r, t) {
		h = qn(h);
		ln(h, kn.aj);
		h.oa(e);
		h.tB = r;
		h.Xk(l);
		a.mp[w](h);
		a.gl.M(h);
		V(h, "action", function (y) {
			y[K].H & 16 ? (a.gl.Lc(y[K]), t[L]()) : Hm(y[K], j)
		});
		return h
	}
	var d = new eC("All items");
	d.I(pk("viewer-view-options"));
	V(d, "action", function (h) {
		h[K].S()[he](a)
	});
	a.Ru = new yu("All items", P(a.jh, a, j, m));
	d.M(a.Ru);
	a.il = new yu(b.dA ? "%1 new items" : "New items", P(a.jh, a, m, m));
	d.M(a.il);
	a.np = d;
	a.mp = [];
	var e = pk("stream-view-options-container");
	a.gl = new oB;
	qB(a.gl, function (h, l) {
		Hm(h, l)
	});
	b.Ix &&
		(a.Qt = c(rn("/ui/magnifying_glass.png"), "Snippet view", "search", P(a.jd, a, sw.dc, m)), a.Qt.Se(2));
	var d = c(rn("/ui/view_options_details.png"), "Expanded view", "cards", P(a.jd, a, sw.eg, m)),
		g = c(rn("/ui/view_options_list.png"), "List view", "list", P(a.jd, a, sw.qp, m));
	d.Se(3);
	g.Se(1)
}
O.jh = function (a, b) {
	a ? this.np.Lc(this.Ru) : this.np.Lc(this.il);
	XG.a.jh[L](this, a, b)
};

function jH() {}

function kE() {
	XG[L](this, new kH(this))
}
R(kE, XG);
O = kE[G];
O.Bp = function () {
	this.Id[w](new qG);
	this.Id[w](new rG);
	this.Id[w](new sG);
	this.Id[w](new uG);
	this.Id[w](new wG);
	this.Id[w](new xG);
	this.Id[w](new yG);
	this.Id[w](new AG)
};
O.ua = function () {
	kE.a.ua[L](this);
	xv(xr, function (a, b, c) {
		var d = $.g();
		d && a.W(d) && (dp(d) || $.Ou(b, c))
	});
	lH(this);
	mH(this);
	this.ej = new Yl;
	this.ej.wa("none");
	this.mv = new Zl(this.ej);
	this.mv.oa(X("activity-indicator"))
};

function lH(a) {
	function b(d, e, g) {
		var h = new gn(k);
		h.I(X(d));
		h.Se(e);
		ln(h, kn.aj);
		V(h, "action", function () {
			g();
			mr(Tf)
		});
		return h
	}
	a.$x = Y(X("viewer-top-controls"), "lhn-nav-button-container");
	a.os = X("chrome-lhn-menu");
	a.Xz = X("settings-button-container");
	a.$t = X("settings-button");
	iH(a, {
		Ix: j,
		dA: j
	});
	b("entries-up", 2, P(a.qh, a, i));
	b("entries-down", 1, P(a.ef, a, i));
	V(kx(a), "scroll", a.gB, m, a);
	V(kx(a), "scroll", a.us, m, a);
	var c = new gn(k);
	c.I(X("viewer-refresh"));
	V(c, "action", function () {
		a[Ic](m, j);
		mr("viewer-refresh-button")
	});
	V(X("viewer-translate-revert-link"), "click", P(a.ep, a, m));
	V(X("viewer-recommendations-return"), "click", a.Rz, m, a);
	V(n, "unload", P(a.po, a, 0))
}

function mH(a) {
	var b = X("mark-all-as-read-split-button"),
		c = new gn("Mark all as read");
	c.Se(2);
	c.oa(b);
	V(c, "action", function () {
		c.b()[Ub]();
		a.Gn()
	});
	var d = new Bu,
		e;
	for (e in Ns) {
		var g = Ns[e];
		d.M(new yu(g.nd ? "Items older than " + g.bd : "All items", g))
	}
	e = new Ou("", d, jB.fa());
	e.oa(b);
	e.Se(1);
	Qu(e, c.b());
	var h = P(a.Gn, a);
	V(d, "action", function (l) {
		h(l[K].S())
	})
}
O.fu = function () {
	T(X("activity-indicator"), "hidden");
	this.hg && (n[Db](this.hg), delete this.hg);
	this.ej.wa("loading")
};
O.qr = function () {
	this.hg && n[Db](this.hg);
	var a = this;
	this.hg = n[qd](function () {
		S(X("activity-indicator"), "hidden");
		delete a.hg
	}, 1E3);
	this.ej.wa("none")
};
mb(O, function () {
	kE.a[me][L](this);
	var a = this.g();
	a != k && ($h(X("chrome"), "search-stream", Jo(a)), $h(X("chrome"), "item-stream", ep(a)), $h(X("chrome"), "recommendations-stream", a.Hc()), this.Qt.D(Jo(a)), Jo(a) || (nH(this), oH(this)))
});
Oa(O, function (a, b) {
	Mt(function (c) {
		Kt(c)
	});
	!this.va && Jo(this.g()) ? pH(this) : kE.a[Ic][L](this, a, b)
});
O.om = function (a) {
	this.$x[v](this.os);
	this.Xz[v](this.$t);
	kE.a.om[L](this, a);
	a = "true" == vx.tb(a, Nf);
	sF(this, a);
	this.su || (this.su = new aF(X("stream-prefs-menu"), this));
	this.su.ua(this.g());
	a = Fp(Z);
	a = hp(this.g(), a);
	this.jh(!a, j)
};
O.Em = function () {
	var a = kE.a.Em[L](this),
		b = this.g(),
		c;
	if (c = "default" == a)
		if (c = b.K.Ha)
			if (c = !Wo(b)) {
				a: {
					if (b[C] in Mv.ac) {
						b = Mv.ac[b[C]];
						c = 0;
						for (var d; d = b[c]; c++)
							if (d instanceof fG) {
								b = j;
								break a
							}
					}
					b = m
				}
				c = !b
			}
	return c ? "tagged" : a
};

function qH(a) {
	a.ba.Yq(function (b) {
		b != k && u(X("viewer-single-parent"), "<span>Results: <b>" + (W(b.Gu) + ("</b> for <b>" + (W(b[jd]) + "</b>."))) + (b.bm ? " (<b>" + W(b.bm) + "</b> seconds)" : "") + "</span>")
	})
}

function nH() {
	u(X("viewer-single-parent"), "");
	u(X("viewer-single-item-parent"), "")
}

function oH() {
	var a = X("single-item-bottom-links");
	a && u(a, "")
}
O.search = function (a, b, c) {
	var d = new bo(a, c);
	0 !== b && !b && $p.dc[zd]([a, ""][Sb](ip(d)));
	DC = k;
	a = new os(d, c, 20);
	eq(d);
	this.wo = k;
	this[Yc](d, a);
	oH(this);
	qH(this);
	(0 === b || b) && XD(this, b)
};

function pH(a) {
	a[Kd](a.g().gb(), i, a.g().Tf)
}

function XD(a, b) {
	yx(a, b, function (c) {
		c.Jm()
	})
}
O.Zn = function (a, b) {
	kE.a.Zn[L](this, a, b);
	!Jo(a) && !ep(a) && ($p.tp[zd]([a[C]]), za(PC(), ""), QC && QC.lh(0));
	var c = "true" == vx.tb(a, Nf);
	a.translate = c
};
O.kq = function (a, b) {
	this.ba = qs.fa(a, 20);
	b()
};

function sx(a) {
	var b = a.g(),
		c = a.ba;
	a.yf(function (d) {
		function e(h) {
			d == k ? u(g, "&nbsp;") : h && !bp(b) ? (u(g, ""), h = Ck("a", {
				target: "_blank",
				href: h
			}), u(h, d + ' <span class="chevron">&raquo;</span>'), g[v](h)) : u(g, d)
		}
		var g = X("chrome-title");
		u(X("quick-add-success-title"), d);
		if (b.K.Ha)
			if (b.$b()) {
				if (b.K == po) {
					e(bs());
					return
				}
			} else {
				e(hf + b[C]);
				return
			}
		b.K == ho ? e("#") : e(k);
		c.Bm(e)
	})
}
O.Yk = function () {
	T(X("chrome-viewer"), "invisible");
	kE.a.Yk[L](this)
};
O.zf = function (a, b) {
	kE.a.zf[L](this, a, b);
	this.vb || zt(this.g(), this.Yg.ba)
};
O.ar = function () {
	fr();
	var a = this.g();
	bp(a) && a.cm ? this.Xt(a.cm, m, m) : as(a, this.ba, P(this.Xt, this))
};
O.Xt = function (a, b) {
	this.ba.Ra === k && tx(this, j);
	var c = Ck("h2");
	u(c, a);
	var d = Ck("div", {
		id: "no-entries-msg"
	});
	d[v](c);
	if (b) {
		c = Ck("span", {
			"class": "link"
		});
		u(c, "View all items");
		var e = this;
		Lj(c, "click", function () {
			Fh(e.dk, Hk);
			e[Ic](j)
		});
		d[v](c)
	}
	c = this.g();
	Jo(c) && (c = Ck("a", {
		href: "http://www.google.com/search?tbm=blg&q=" + nh(c.gb()),
		target: "_blank"
	}), u(c, "Try your search on Google Blog Search."), d[v](c));
	jx(this)[v](d);
	this.Yk()
};
O.qw = function () {
	zx(this, oE)
};
O.rw = function () {
	zx(this, mE)
};
ix[G].fA = function () {
	zx(this, nE)
};
O = kE[G];
O.te = function () {
	return this.va ? X("viewer-page-container") : kE.a.te[L](this)
};
O.ju = function () {
	var a = Mv.Jg;
	iG(a, 1, j);
	0 <= a.Mb && (gG(a) && 0 < gG(a).df) && a.lt()
};
O.Yo = function (a) {
	var b = this.g();
	b && (a != sw.dc || Jo(b)) && this.jd(a)
};
O.jd = function (a, b) {
	var c = this.wo != a;
	if (!kE.a.jd[L](this, a, b)) return m;
	hH(this, a);
	jx(this);
	var d = kx(this);
	if (!b && this.g()) {
		Ra(d[I], "hidden");
		var e = this;
		n[qd](function () {
			if (!Jo(e.g()) && !ep(e.g()) && a.$m && c) {
				var g = a.Fg;
				St = j;
				Et(rf, g[bd]())
			}
			U && Jo(e.g()) ? pH(e) : e[Yc](e.g(), U ? k : e.ba)
		}, 1)
	}
	return j
};
O.ep = function (a) {
	var b = "true" == vx.tb(this.g(), Nf);
	a || (vx.Kc(this.g(), Nf, (!b)[bd]()), sF(this, !b), this[Ic]())
};

function sF(a, b) {
	Jn(X("viewer-translated-by"), b)
}

function tC(a) {
	T(X("quick-add-success"), "hidden");
	a.Oc()
}
O.Ak = function (a) {
	var b = this.g();
	Jo(b) && sA(a, b.gb())
};
O.En = function (a) {
	return (a = op.hb(a)) ? ph(a.h) : k
};
O.Oc = function () {
	hE()
};
O.xs = function (a, b, c, d) {
	var e = this;
	Vt(function (g) {
		if (g) {
			g = new Ty("mark-as-read-dialog");
			Ey(g, 0.5);
			Fy(g, j);
			var h = !Lg(d) || 0 == d.nd;
			Cy(g, h ? "Mark all as read?" : "Mark as read?");
			var l = new zy;
			l.set("ok", h ? "Mark all as read" : "Mark as read", j);
			l.set("cancel", "Cancel", m, j);
			Jy(g, l);
			l = {
				title: a,
				count: b,
				Ox: 1E3 <= b,
				rB: !h,
				IA: h ? "" : d.bd
			};
			h = "<div>";
			l = l.rB ? "Are you sure you want to mark all items older than <b>" + (W(l.IA) + ("</b> from " + (W(l[id]) + " as read?"))) : l.Ox ? "Are you sure you want to mark <b>more than " + (W(l[Ad]) +
				(" items</b> from " + (W(l[id]) + " as read?"))) : "Are you sure you want to mark <b>" + (W(l[Ad]) + (" items</b> from " + (W(l[id]) + " as read?")));
			h += l;
			h = sn(h + "<br><br><label><input type='checkbox' id='confirm-mark-all-read-cb' class='confirm-mark-all-read-cb'></input>Don't ask me again</label></div>");
			l = Y(h, "confirm-mark-all-read-cb", "input");
			g.O()[v](h);
			V(g, "dialogselect", P(e.iy, e, c, l));
			g.D(j)
		} else c(j)
	})
};
O.iy = function (a, b, c) {
	b[pd] && Et(Df, m[bd](), i);
	a("ok" == c.key)
};
O.Rz = function () {
	Cv[vc](2)
};
O.Yz = function () {
	zx(this, lE)
};

function kH(a) {
	this.Nc = a
}
R(kH, jH);

function cH(a) {
	return $G(a) ? $G(a)[Zc] : 0
}

function bH(a, b) {
	var c = $G(a);
	if (c)
		if ("true" == cs(Bf)) {
			var d = [c[Wd], c[Zc]],
				e = [c[Wd], b];
			a.ro && a.ro[ad]();
			a.ro = new Iz(c, d, e, 200, fB);
			a.ro[Bc]()
		} else Sa(c, b)
}

function aH(a) {
	return $G(a) ? $G(a)[xe] : 0
}

function $G(a) {
	return a.Nc.te()
}

function rH(a, b) {
	this.Fu = [];
	dw[L](this, a, b)
}
R(rH, dw);
rH[G].Ik = function () {
	rH.a.Ik[L](this);
	for (var a = 0, b; b = this.Fu[a]; a++) b.s()
};
var sH = [Wx, Sx, Ix];
O = rH[G];
O.zm = function () {
	var a = rH.a.zm[L](this)[td](" ");
	this.o.Gc() && (a[w]("created"), this.Ub.vc || a[w]("created-no-title"));
	return a[N](" ")
};

function tH(a) {
	var b = a.o,
		c = a.Ub,
		d = '<div class="entry-container"><div class="entry-main"><div class="entry-date">' + c.Gj + '</div><h2 class="entry-title">' + (c.dd ? '<a class="entry-title-link" target="_blank" href="' + c.dd + '">' + (c.vc ? c.vc : "") + "<div class=\"entry-title-go-to\"></div></a><span class='entry-icons-placeholder'></span>" : c.vc ? c.vc + "<span class='entry-icons-placeholder'></span>" : "") + '</h2><div class="entry-author"><span class="entry-source-title-parent">' + uH(c) + "</span> ",
		e;
	if (c.Gc) {
		e = {
			authorName: c[ed],
			El: c.El,
			qd: c.qd,
			je: c.je
		};
		var g = "From " + ('<a target="_blank" name="' + e.El + '" class="entry-post-author-name friend-link link">' + (e[ed] + "</a> in Google Reader"));
		e = vH({
			qd: e.qd,
			je: e.je
		}) + '<div class="entry-source-post-author">' + g + "</div>"
	} else e = {
		authorName: c[ed],
		qd: c.qd,
		je: c.je
	}, g = "", e[ed] && (g += '<span class="entry-author-parent">by <span class="entry-author-name">' + (e[ed] + "</span>") + "</span>"), e = g + vH({
		qd: e.qd,
		je: e.je
	});
	d = sn(d + e + '</div><div class="entry-debug"></div><div class="entry-annotations"></div><div class="entry-body"></div></div></div>');
	wH(a, Y(d, "entry-date", "div"));
	e = Y(d, "entry-body", "div");
	g = a.o;
	u(e, "");
	a: {
		for (var h = 0, l; l = sH[h]; h++)
			if (l.Jl(g)) {
				(new l.T(g, e, i)).Yl();
				h = e;
				Fh(h[Tc]("iframe"), Jx);
				Fh(h[Tc]("object"), Jx);
				Fh(h[Tc]("audio"), Jx);
				Fh(h[Tc]("video"), Jx);
				h = h[Tc]("embed");
				l = 0;
				for (var r = i; r = h[l]; l++) "object" != r[oe][je][Be]() && Jx(r);
				break a
			}
		f(p("Couldn't find a handler for entry node."))
	}
	if (g.vd) {
		lw(a, e);
		g = e[Tc]("a");
		for (h = 0; l = g[h]; h++) a.X[w](V(l, "click", a.SA, m, a))
	} else S(e, "entry-body-empty");
	g = Y(d, "entry-title", "h2");
	lw(a, g);
	c.dd && (h = Y(d, "entry-title-link", "a"), a.X[w](V(h, "click", a.dr, m, a)));
	if ((h = c.qd) && 0 != h[F]) {
		l = tk("a", "entry-via-link", d);
		for (var r = 0, t; t = l[r]; r++) a.X[w](Wr(t, h[r].d))
	}
	e = [g, e];
	c.vc && (c = Y(d, "entry-source-title"), e[w](c), kw(a, c));
	if (0 < b.kj[F]) {
		c = Y(d, "entry-annotations", "div");
		g = a.o.kj;
		for (h = 0; l = g[h]; h++) r = l.Qu != ua || Kr(a.o, Zo(Z)), r = {
			Jp: l,
			fi: r
		}, l = {
			authorName: r.Jp.Fv,
			fi: r.fi
		}, l = '<div class="entry-annotation"><table cellpadding="0" cellspacing="0"><tr><td valign="top" class="entry-annotation-author-container"><div class="author-attribution plain-via">' +
			('Shared by <span class="entry-author-attribution-author-name">' + (W(l[ed]) + "</span>") + (l.PB ? ":" : "")) + '</div></td><td valign="top" class="entry-annotation-box-container">', r = {
			Ga: "entry-annotation-box",
			content: '<div class="entry-annotation-body">' + r.Jp.yc() + "</div>"
		}, t = {
			content: r[Ob]
		}, l = sn(l + ('<div class="tip-box ' + (r.CC ? "tip-top" : "tip-left") + " " + (r.Ga ? r.Ga : "") + '" id="' + (r.id ? r.id : "") + '"><div class="arr">&nbsp;</div><div class="c">' + ('<table cellpadding="0" cellspacing="0" border="0" class="round-box ' +
			(t.Ga ? t.Ga : "") + '" id="' + (t.id ? t.id : "") + '"><tr><td class="s tl' + (t.fC ? " sq" : "") + '"><td class="s"></td><td class="s tr' + (t.gC ? " sq" : "") + '"></tr><tr><td class="s"></td><td class="c">' + t[Ob] + '</td><td class="s"></td></tr><tr><td class="s bl' + (t.dC ? " sq" : "") + '"><td class="s"></td><td class="s br' + (t.eC ? " sq" : "") + '"></tr></table>') + "</div></div>") + "</td></tr></table></div>"), c[v](l);
		wn(c, "_blank");
		e[w](c)
	}
	b.sf() && !b.Gc() && e[w](Y(d, "entry-author-name", "span"));
	$.Ak(e);
	b.Gc() && (c = Y(d, "entry-post-author-name",
		"a"), g = Ao(Zo(new Ep(io(b.cc.d)[Md]))), a.X[w](Wr(c, g)));
	if (a = b.Xv) b = Y(d, "entry-debug", "div"), u(b, ph(a)), e[w](b);
	return d
}
O.SA = function (a) {
	Ws(this.o, "tracking-body-link-used");
	var b = "0x" + this.o[Id]()[be](32),
		c = new Zq;
	c.wi = m;
	c.Ic("/urllog", Mn([
		["url", a[gc][ae]],
		["bl_url", this.o.zc("alternate")],
		["id", b]
	]))
};

function wH(a, b) {
	var c = new zw(b);
	a.Fu[w](c);
	a.X[w](V(c, "beforeshow", P(a.Jw, a, c)))
}
O.Jw = function (a) {
	if (!a.Mw) {
		var b = "Received:",
			c = $.Em();
		"starred" == c ? b = "Starred:" : "tagged" == c && (b = "Tagged:");
		Ya(a, "goog-tooltip date-tooltip text-tooltip");
		b = {
			xz: b,
			At: xn(new Date(s[Gb](oa(this.o.We, 10) / 1E3))),
			tz: xn(this.o.sz)
		};
		b = "<table>" + (b.At ? '<tr><td class="label">' + W(b.xz) + "</td><td>" + W(b.At) + "</td></tr>" : "") + '<tr><td class="label">Published:</td><td>' + W(b.tz) + "</td></tr></table>";
		u(a.b(), b);
		a.Mw = j
	}
};
O.Oo = function (a, b) {
	ZG($, this.nf, m, j);
	return rH.a.Oo[L](this, a, b)
};
O.dr = function (a) {
	Fs && !Bj(a, 1) && !a[sd] && !a[dc] ? (a[Zb](), this.Lg()) : (this.Hn() && gw(this), Ws(this.o, "tracking-item-link-used"))
};
O.Lg = function () {
	rH.a.Lg[L](this);
	this.Hn() && gw(this);
	Ws(this.o, "tracking-item-link-used")
};
O.Hn = function () {
	return j
};

function xH(a, b) {
	rH[L](this, a, b)
}
R(xH, rH);
O = xH[G];
O.Ef = function () {
	xH.a.Ef[L](this);
	var a = this.A;
	u(a, "");
	sl(a, 150);
	this.Zm = m;
	this.io = 0
};
O.pm = function () {
	var a = this;
	this.Zm = j;
	++this.io;
	var b = this.io,
		c = this.A;
	u(c, "");
	T(c, "cleared-out");
	if (this.Lw) n[qd](function () {
		a.Zm && b == a.io && sl(c, "auto")
	}, 2E3);
	else this.Lw = j, sl(c, "auto");
	var d = sn('<div class="card card-common"><div class="card-content"></div><div class="card-actions card-bottom"></div></div>');
	c[v](d);
	var e = tH(this);
	yH(this, e);
	var g = iw(this),
		h = sn('<div class="entry-icons"><div class="link empty cornerstar"></div></div>');
	Y(e, "entry-icons-placeholder", "span")[v](h);
	var l = Y(h, "cornerstar",
		"div");
	Y(d, "card-content", "div")[v](e);
	Y(d, "card-actions", "div")[v](g);
	this.X[w](V(c, "click", P(this.Xw, this, g, h)));
	jw(this, [l])
};

function zH(a, b) {
	var c = Ck("iframe"),
		d = {};
	Fh("width height frameborder scrolling marginwidth marginheight".split(" "), function (e) {
		b.hasAttribute(e) && (d[e] = b[Rd](e))
	});
	uk(c, d);
	Ik(c, b);
	n[qd](function () {
		Ik(b, c)
	}, 2E3)
}

function yH(a, b) {
	var c = b.querySelectorAll(Fx);
	mr("iframe-ads-per-item", c[F] + "", 5E-4);
	for (var d = 0; d < c[F]; d++) zH(a, c[d])
}
O.bq = function () {
	this.Zm = m;
	this.Ik();
	var a = this.A,
		b = tl(a)[M];
	try {
		u(a, "")
	} catch (c) {}
	S(a, "cleared-out");
	sl(a, b)
};
O.Xw = function (a, b, c) {
	Rq(c, [a, b]) || Bj(c, 1) || ZG($, this.nf)
};
O.Sl = function (a) {
	a = AH({
		contents: a,
		Jq: "card-bottom"
	});
	var b = Y(this.A, "card-actions", "div");
	T(b, "card-bottom");
	S(this.A, "active-action-area");
	Gk(a, b);
	return a
};
O.Bf = function () {
	xH.a.Bf[L](this);
	var a = Y(this.A, "card-actions", "div");
	S(a, "card-bottom");
	T(this.A, "active-action-area")
};
O.Hn = function () {
	return Qt()
};
var BH = sw,
	CH = qw(pw(ow(nw(new mw, "cards"), xH), "fetch-render-card-view"), "render-card-view-item");
CH.Fg = j;
CH.$m = j;
BH.eg = CH;

function DH(a, b) {
	rH[L](this, a, b)
}
R(DH, rH);
DH[G].Ef = function () {
	DH.a.Ef[L](this);
	var a = this.A,
		b = EH(this);
	a[v](b.A);
	jw(this, [b.iA])
};
DH[G].Jm = function () {
	var a = $.g();
	$p.dc[zd]([a.gb(), this.nf][Sb](ip(a)));
	$.jd(sw.bj, j);
	var a = xs({
		query: a.gb()
	}),
		b = this.o,
		c = $.ba,
		d = new jp($.g(), this.nf);
	$[Yc](d, new vs(d, a, [b]));
	ZG($, 0, j, j);
	a = wx($);
	gw(a);
	a.xy = c;
	nH($);
	oH($);
	u(X("viewer-single-item-parent"), '<span class="link single-item-return-link">&laquo; Back to search results</span>');
	c = X("single-item-bottom-links");
	b = {
		Nz: hw(a)
	};
	b = '<div class="search-item-bottom-links"><p><a href="" class="single-item-source-link">View more items from "' + (W(b.Nz) +
		'"') + '</a></p><p>Or go <span class="link single-item-return-link">back to your search results</span> page</p></div>';
	u(c, b);
	b = tk("span", "single-item-return-link", X("chrome"));
	for (c = 0; d = b[c]; c++) V(d, "click", WD);
	b = tk("a", "single-item-source-link", X("single-item-bottom-links"));
	a = [a.o.cc.d];
	if (a[F] == b[F])
		for (c = 0; d = b[c]; c++) Wr(d, a[c])
};

function FH(a, b, c, d) {
	a = {
		Gj: a.xm(b),
		vc: a.uf(),
		dd: c,
		Uo: hw(a),
		snippet: d
	};
	return sn('<div class="search-result"><div class="entry-main">' + (a.dd ? '<a class="entry-original" target="_blank" href="' + a.dd + '"></a>' : "") + '<div class="entry-secondary"><h2 class="entry-title"><a class="entry-title-link" target="_blank" href="' + a.dd + '">' + (a.vc ? a.vc : "(title unknown)") + '</a><div class="entry-icons"><div class="empty star"></div></div></h2><div class="entry-secondary-snippet"><span class="snippet">' + a[Gc] + '</span></div></div><div class="entry-attribution">' +
		uH(a) + '&nbsp;-&nbsp;<span class="entry-date">' + a.Gj + "</span></div></div></div>")
}

function EH(a) {
	var b = a.o,
		c = b.zc("alternate"),
		b = b.vd,
		b = In(b) || "",
		b = TD($.g().gb(), b);
	350 < b[F] && (b = b[be](0, 350) + "...");
	c = FH(a, new Date(s[Gb](oa(a.o.We, 10) / 1E3)), c, b);
	wH(a, Y(c, "entry-date", "span"));
	b = Y(c, "entry-secondary-snippet", "div");
	lw(a, b);
	var d = Y(c, "entry-source-title");
	kw(a, d);
	var e = Y(c, "entry-title-link", "a");
	a.X[w](V(e, "click", a.Jm, m, a));
	nb(e, function () {
		return m
	});
	$.Ak([e, d, Y(b, "snippet", "span")]);
	return {
		A: c,
		iA: Y(c, "star", "div")
	}
}
DH[G].Sl = function () {
	return k
};
var GH = sw,
	HH = qw(pw(ow(nw(new mw, "search"), DH), "fetch-render-search-view"), "render-search-view-item");
HH.Xr = j;
GH.dc = HH;
sw.dc.Ti = sw.dc.Xm = function (a) {
	return Jo(a) && !ep(a)
};

function IH(a, b) {
	rH[L](this, a, b)
}
R(IH, xH);

function WD() {
	var a = wx($);
	$.jd(sw.dc, j);
	$p.dc[zd]([$.g().$g.gb(), ""][Sb](ip($.g().$g)));
	$.va = m;
	nH($);
	oH($);
	var b = a.o[Id]();
	$.Jh = b;
	(a = a.xy) && a[me]();
	$[Yc]($.g().$g, a)
}

function JH(a, b) {
	rH[L](this, a, b)
}
R(JH, IH);
var KH = sw,
	LH = qw(pw(ow(nw(new mw, "single-search"), JH), "fetch-render-card-view"), "render-card-view-item");
LH.Fg = j;
LH.Zr = j;
KH.bj = LH;
sw.bj.Ti = sw.bj.Xm = function (a) {
	return Jo(a) && ep(a)
};

function MH(a, b) {
	rH[L](this, a, b)
}
R(MH, rH);
O = MH[G];
ya(O, function () {
	this.jm = tH(this);
	this.im = iw(this);
	this.A[v](this.jm);
	this.A[v](this.im);
	S(this.A, "expanded")
});
O.collapse = function () {
	this.A[Hd](this.jm);
	this.A[Hd](this.im);
	this.Bf();
	fw(this);
	this.im = this.jm = k;
	T(this.A, "expanded")
};
O.xm = function (a) {
	return xn(a, j)
};
O.uf = function () {
	return In(MH.a.uf[L](this))
};
O.Ef = function () {
	MH.a.Ef[L](this);
	var a = this.Ub.dd;
	this.Ub.snippet = this.o.Sj();
	u(this.A, '<div class="collapsed"><div class="entry-icons"><div class="link empty list-star"></div></div><div class="entry-date">' + this.Ub.Gj + '</div><div class="entry-main">' + (this.Ub.dd ? '<a class="entry-original" target="_blank" href="' + this.Ub.dd + '"></a>' : "") + '<span class="entry-source-title">' + this.Ub.Uo + '</span><div class="entry-secondary"><h2 class="entry-title">' + this.Ub.vc + '</h2><span class="entry-secondary-snippet">' +
		(this.Ub[Gc] && this.Ub.vc ? " - " : "") + '<span class="snippet">' + this.Ub[Gc] + "</span></span></div></div></div>");
	var b = tn(this.A),
		c = b.collapsed[0],
		d = b["entry-secondary"][0],
		e = b[Gc][0],
		g = b["entry-source-title"][0],
		h = b["entry-title"][0],
		l = b["list-star"][0],
		r = a ? b["entry-original"][0] : k;
	wH(this, b["entry-date"][0]);
	lw(this, d);
	$.Ak([e, g, h]);
	jw(this, [l]);
	this.X[w](V(c, "click", P(this.$w, this, r, l)));
	if (a) {
		var t = this;
		this.X[w](V(r, "click", function (y) {
			t.dr(y);
			mr("list-view-chevron")
		}))
	}
};
O.$w = function (a, b, c) {
	Rq(c, [a, b]) || (a = Zh(this.A, "expanded"), eH($, this.nf), a && $.Mc())
};
O.Sl = function (a) {
	a = AH({
		contents: a
	});
	S(this.A, "action-area-visible");
	this.A[v](a);
	return a
};
O.Bf = function () {
	MH.a.Bf[L](this);
	T(this.A, "action-area-visible")
};
var NH = sw,
	OH = qw(pw(ow(nw(new mw, "list"), MH), "fetch-render-list-view"), "render-list-view-item");
OH.$m = j;
OH.Iq = j;
NH.qp = OH;

function PH(a, b, c, d, e, g) {
	nC[L](this, a, b, c, d, e, g)
}
R(PH, nC);

function mt(a, b) {
	nC[L](this, Me, a, i, b)
}
R(mt, nC);
mt[G].Ac = function () {
	return this.bb instanceof wa ? "Deleting tags..." : zn("Deleting your &quot;%1&quot; tag...", ph(this.h))
};
mt[G].xc = function () {
	return this.bb instanceof wa ? "Deleted tags." : zn("Your &quot;%1&quot; tag has been deleted.", ph(this.h))
};
mt[G].Gd = function () {
	return [wr, op]
};

function uF(a, b, c) {
	nC[L](this, Ne, a, i, c);
	this.Bz = b
}
R(uF, nC);
uF[G].fb = function () {
	var a = uF.a.fb[L](this);
	a[w](["dest", this.Bz]);
	return a
};
uF[G].Ac = function () {
	return zn("Renaming your &quot;%1&quot; tag...", ph(this.h))
};
uF[G].xc = function () {
	return "Your tag has been renamed."
};
uF[G].Gd = function () {
	return [wr, op, xr]
};

function wt(a, b) {
	nC[L](this, Pe, a, "unsubscribe", b, i, i)
}
R(wt, PH);
O = wt[G];
O.Ac = function () {
	return this.bb instanceof wa ? "Unsubscribing..." : zn("Unsubscribing from &quot;%1&quot;...", ph(this.h))
};
O.xc = function () {
	return this.bb instanceof wa ? "Unsubscribed." : zn("You have unsubscribed from &quot;%1.&quot;", ph(this.h))
};
O.Uq = function () {
	return 10
};
O.$n = function () {
	var a = this.bb instanceof wa ? this.bb : [this.bb];
	this.pf = m;
	for (var b = 0; b < a[F]; b++) {
		var c = Bo(a[b]);
		if (!op.hb(c)) {
			this.pf = j;
			break
		}
		var d = op;
		if (d.Zc && !(!c[C] in d.oc)) {
			var e = d.oc[c[C]];
			delete d.oc[c[C]];
			Dh[we][L](d.Eb, e, 1);
			c = i;
			for (c in d.oc) d.oc[c] > e && d.oc[c]--
		}
	}
	this.pf || (a = op, a.un = Ln(), a.gp())
};
O.yi = function () {
	this.pf && op[Ic]();
	mC(this)
};
O.Gd = function () {
	return [xr]
};

function yt(a, b, c, d) {
	nC[L](this, Pe, a, "edit", d, b, c)
}
R(yt, PH);
O = yt[G];
O.Ac = function () {
	return this.bb instanceof wa ? "Saving changes..." : zn("Saving changes to &quot;%1&quot;...", jh(this.h) ? "Untitled Subscription" : ph(this.h))
};
O.xc = function () {
	return this.bb instanceof wa ? "Saved changes." : zn("Saved changes to &quot;%1.&quot;", jh(this.h) ? "Untitled Subscription" : ph(this.h))
};
O.Gd = function () {
	return [xr]
};
O.$n = function () {
	var a = this.bb instanceof wa ? this.bb : [this.bb];
	this.pf = m;
	for (var b = 0; b < a[F]; b++) {
		var c = Bo(a[b]),
			c = op.hb(c);
		if (!c) {
			this.pf = j;
			break
		}
		for (var d = {}, e = 0; e < c.Ld[F]; e++) d[ko(c.Ld[e])] = j;
		for (e = 0; e < this.hj[F]; e++) d[ko(this.hj[e])] = j;
		for (e = 0; e < this.eo[F]; e++) delete d[ko(this.eo[e])];
		c.Ld = [];
		for (var g in d) c.Ld[w](To(g));
		this.h && (c.h = this.h)
	}
	this.pf || (a = op, a.un = Ln(), a.gp())
};
O.yi = function () {
	this.pf && op[Ic]();
	mC(this)
};

function QH(a, b) {
	jC[L](this, Te);
	this.lv = a;
	this.Bt = b
}
R(QH, jC);
QH[G].fb = function () {
	return [["action", this.lv], ["s", this.Bt[C]], ["impression", this.Bt[Rc]]]
};

function AD(a, b) {
	QH[L](this, ig, a);
	this.Ct = b
}
R(AD, QH);
AD[G].Ac = function () {
	return 'Removing "' + (ph(this.Ct) + '" from your recommendations...')
};
AD[G].xc = function () {
	return 'Removed "' + (ph(this.Ct) + '" from your recommendations.')
};

function pt(a) {
	QH[L](this, kg, a);
	this.mi = m
}
R(pt, QH);

function vG(a) {
	QH[L](this, jg, a);
	this.mi = m
}
R(vG, QH);
var wr = k,
	op = k;

function RH() {
	this.Eb = [];
	this.oc = {};
	this.Dt = [];
	this.ji = this.Zc = m;
	this.un = 0
}
O = RH[G];
O.Qa = function (a) {
	this.Zc ? a(this.Eb) : (this.ji || SH(this), n[qd](P(this.Qa, this, a), 50))
};
O.ve = function (a, b) {
	var c = this;
	this.Qa(function () {
		b(c.Eb[c.oc[a[C]]])
	})
};
O.hb = function (a) {
	return !this.Zc ? k : this.Eb[this.oc[a[C]]]
};

function SH(a) {
	a.Zc = m;
	a.ji = j;
	var b = [];
	a.Ng(b, function () {
		a.Eb = b;
		a.oc = {};
		for (var c = 0, d; d = a.Eb[c]; c++) a.oc[d.d[C]] = c;
		a.Zc = j;
		a.ji = m;
		a.un = Ln()
	})
}

function TH(a, b) {
	a.Eb[w](b);
	a.oc[b.d[C]] = a.Eb[F] - 1
}
Oa(O, function () {
	SH(this);
	this.Qa(P(this.gp, this))
});
O.gp = function () {
	for (var a = 0, b; b = this.Dt[a]; a++) b(this.Eb)
};
O.ce = function (a) {
	this.Dt[w](a)
};
kb(O, function (a) {
	return !this.Zc ? k : this.oc[a] ? j : m
});

function UH(a, b) {
	this.Vd = a;
	this.qm = b
}
O = UH[G];
O.Qa = function (a) {
	var b = this;
	this.Vd.Qa(function (c) {
		for (var d = [], e = 0, g; g = c[e]; e++) b.qm(g) && d[w](g);
		a(d)
	})
};
O.ve = function (a, b) {
	var c = this;
	this.Vd.ve(a, function (d) {
		b(d && c.qm(d) ? d : k)
	})
};
O.hb = function (a) {
	return (a = this.Vd.hb(a)) && this.qm(a) ? a : k
};
Oa(O, function () {
	this.Vd[Ic]()
});
O.ce = function (a) {
	this.Vd.ce(P(this.Qa, this, a))
};
var VH = 0;

function WH(a, b, c) {
	IC[w](this);
	this.Vd = a;
	this.ni = b;
	this.Rb = m;
	this.tc = new uC(c);
	this.Gr = "keyboard-selector-input-" + VH++
}
R(WH, KC);
O = WH[G];
O.kb = function () {
	this.Vd.Qa(P(this.hA, this))
};
O.hA = function (a) {
	this.Rb = j;
	this.Xl = k;
	var b = DC && this.Vd.hb(DC) || a[0];
	this.fh = b ? b.d : k;
	XH(this, a);
	this.tc.kb();
	if (0 == a[F]) {
		var c = this;
		n[qd](function () {
			c.$()
		}, 2E4)
	}
	za(YH(this), "");
	YH(this)[qc]()
};

function XH(a, b) {
	b[F] ? (xC(a.tc, a.ni.prompt), ZH(a, b, a.ni.Dr, "initial-stream-list")) : (xC(a.tc, a.ni.zq), yC(a.tc, a.ni.Aq))
}
O.$ = function () {
	this.Rb = m;
	this.tc.$();
	var a = YH(this);
	a[Ub]();
	Mj(a, "blur", this.Tj, m, this);
	Hk(a);
	Mj(this.ga, "key", this.Dc, m, this);
	this.ga.s();
	this.ga = k
};
O.Xe = function (a) {
	this.Xl || this.Vd.Qa(P(this.kB, this, a))
};
O.kB = function (a, b) {
	if (0 == b[F]) XH(this, b);
	else {
		var c = [],
			d = YH(this)[Yb][Be](),
			e = -1;
		this.fh == k && (this.fh = b[0].d);
		for (var g = 0, h; h = b[g]; g++) 0 == mh(d, h.h[Xc](0, d[F])) && (h.d.W(this.fh) && (e = c[F]), c[w](h)); - 1 == e && (e = 0);
		(40 == a || 39 == a) && e < c[F] - 1 ? e++ : (38 == a || 37 == a) && 0 < e && e--;
		this.fh = c[F] ? c[e].d : k;
		if (c[F] && 13 == a) {
			xC(this.tc, ph(c[e].h));
			yC(this.tc, "");
			var l = this;
			this.Xl = n[qd](function () {
				fq(l.fh);
				l.$()
			}, 400)
		} else jh(d) ? XH(this, b) : c[F] ? (xC(this.tc, d), ZH(this, c, "Matches:", "multiple-matches")) : (xC(this.tc, d), yC(this.tc,
			'<div class="no-matches">' + this.ni.Os + "</div>"))
	}
};

function ZH(a, b, c, d) {
	c = '<h6 class="stream-list-header">Use the return key to select and the arrow keys to navigate.</h6><div class="stream-list ' + d + '"><span class="stream-list-label">' + c + '</span><ul class="streams">';
	d = [];
	for (var e = 0, g; g = b[e]; e++) {
		var h = a.fh.W(g.d),
			l = xr.hb(g.d);
		d[w]('<li class="stream' + (h ? " selected" : "") + (l && 0 < l.Zd ? " unread" : "") + '">');
		d[w](ph(g.h));
		d[w]("</li>");
		d[w]('<li class="separator">&bull;</li>')
	}
	c += d[N]("") + "</li></ul></div>";
	yC(a.tc, c)
}
O.rh = function () {};

function YH(a) {
	var b = X(a.Gr);
	if (!b) {
		b = Ck("input", {
			type: "text",
			"class": "keyboard-selector-input",
			id: a.Gr,
			autocomplete: "off"
		});
		q[J][v](b);
		var c = b;
		a.ga = new sm(c);
		V(a.ga, "key", a.Dc, m, a);
		V(c, "blur", a.Tj, m, a)
	}
	return b
}
O.Dc = function (a) {
	if (this.Rb) {
		this.pn && n[Db](this.pn);
		var b = a[D],
			c = this;
		this.pn = n[qd](function () {
			27 == b ? c.$() : (c.Xe(b), n[qd](function () {
				var d = YH(c)[Yb][F];
				cz(YH(c), d);
				c.pn = k
			}, 1))
		}, 1)
	}
};
O.Tj = function () {
	if (this.Rb) {
		var a = this;
		n[qd](function () {
			a.Xl || a.$()
		}, 1)
	}
};
var zE, AE;

function vE() {
	zE = new WH(new UH(wr, function (a) {
		return a.Ia[E] == lf
	}), Cg, "label-keyboard-selector");
	AE = new WH(op, Dg, "subscription-keyboard-selector")
}
var BE = [38, 38, 40, 40, 37, 39, 37, 39, "b", "a"],
	CE = 0;

function qE() {
	Fh([X("logo-container"), X("logo-link")], function (a) {
		a && (jb(a, Qn(We)), Si && Lj(a, "click", function () {
			n[qd](function () {
				n.location = a[ae]
			}, 0)
		}))
	})
}

function aE() {
	RH[L](this)
}
R(aE, RH);
aE[G].Ng = function (a, b) {
	Jr(Oe, function (c) {
		for (var d = 0, e; e = c[kd][d]; d++) {
			for (var g = [], h = 0, l; l = e[Kc][h]; h++) g[w](To(l.id));
			a[w]({
				d: Bo(e.id),
				Yj: e.htmlUrl,
				h: e[id],
				Ld: g,
				Pw: e.firstitemmsec,
				ku: e.sortid
			})
		}
		b()
	}, i, "_STREAM_LIST_SUBSCRIPTIONS")
};

function tt(a, b, c) {
	var d = [];
	a.Qa(function (e) {
		for (var g = 0, h; h = e[g]; g++)
			for (var l = 0, r; r = h.Ld[l]; l++) b.W(r) && d[w](h)
	});
	c(d)
}

function fE(a, b) {
	return op ? (op.ve(a, function (c) {
		b(c != k)
	}), j) : m
}

function $D() {
	RH[L](this)
}
R($D, RH);
$D[G].Ng = function (a, b) {
	Jr("/api/0/tag/list", function (c) {
		for (var d = 0, e; e = c.tags[d]; d++) {
			var g = To(e.id);
			a[w]({
				d: Ao(g),
				h: wp(g),
				Ia: g,
				xC: "all" == e.shared,
				ku: e.sortid
			})
		}
		b()
	}, i, "_STREAM_LIST_TAGS")
};
$D[G].getLabels = function (a) {
	this.Qa(function (b) {
		for (var c = [], d = 0, e; e = b[d]; d++) e.Ia[E] == lf && c[w](e.Ia);
		a(c)
	})
};

function cE() {
	RH[L](this);
	this.km = 0;
	this.ru = [];
	this[Ic]()
}
R(cE, RH);

function mG(a, b) {
	a.Qa(function () {
		b()
	})
}
O = cE[G];
O.Ng = function (a, b) {
	var c = this;
	Jr("/api/0/preference/stream/list", function (d) {
		for (var e in d.streamprefs) {
			for (var g = {}, h = 0, l; l = d.streamprefs[e][h]; h++) g[l.id] = l[Yb];
			a[w]({
				d: Bo(e),
				h: e,
				Ck: g
			})
		}
		c.km = 0;
		b()
	}, function () {
		c.km++;
		10 > c.km ? (c.Zc = m, c.ji = m) : (fr(), br("Oops...an error occurred. Please try again in a few seconds.", er, i, i))
	}, "_STREAM_LIST_STREAM_PREF")
};

function dE(a, b) {
	a.ru[w](b)
}

function $H(a, b) {
	for (var c = 0, d; d = a.ru[c]; c++) b = d(b);
	return b
}
O.tb = function (a, b) {
	var c = this.hb($H(this, a));
	return c == k || !(b.id in c.Ck) ? b["default"] : c.Ck[b.id]
};
O.Ce = function (a) {
	if (!a.K.Ha && !bp(a)) return m;
	if (!this.Kt) {
		var b = gp(Z, "root");
		this.Kt = Ao(b)
	}
	return a.W(this.Kt) ? j : "true" == this.tb(a, Mf)
};

function ux(a, b) {
	var c = a.tb(b, Of);
	c in Gt && (c = Gt[c]);
	if ("global" == c && (ap(b) || b.Hc() || bp(b))) c = "auto";
	return "global" == c || !(c in Ht) || !Xo(b, Vo(Z)) && Wo(b) ? Ht.newest : Ht[c]
}
O.Kc = function (a, b, c) {
	a = $H(this, a);
	if (this.tb(a, b) != c) {
		var d = this.hb(a);
		d == k && (d = {
			d: a,
			h: a[C],
			Ck: {}
		}, TH(this, d));
		d.Ck[b.id] = c;
		ua && (d = new Zq, ir(d, function () {
			br("Oops...an error occurred. Please try again in a few seconds.", er, i, i)
		}), d.wi = m, d.Ic("/api/0/preference/stream/set", Mn([
			["s", a[C]],
			["k", b.id],
			["v", c]
		])))
	}
};
O.Td = function (a, b) {
	(a.K.Ha || bp(a)) && this.Kc(a, Mf, b[bd]())
};
O.jh = function (a, b) {
	return this.Kc(a, Qf, b[bd]())
};
O.Io = function (a, b) {
	this.Kc(a, Of, b.id)
};
var xr;

function aI() {
	RH[L](this);
	this.qk = 1E3;
	this.Ku = [];
	var a = this;
	this.ce(function (b) {
		a.yr = j;
		for (var c = 0, d; d = b[c]; c++) DE(a, d);
		a.yr = m
	})
}
R(aI, RH);
aI[G].ts = function (a, b) {
	Jr("/api/0/unread-count", a, b, "_STREAM_LIST_UNREAD_COUNTS")
};
aI[G].Ng = function (a, b) {
	var c = this;
	this.ts(function (d) {
		if (d.denied) Ph(a, c.Eb);
		else {
			c.qk = d.max;
			for (var e = {}, g = 0, h; h = d.unreadcounts[g]; g++) h = {
				d: Bo(h.id),
				h: h.id,
				Zd: h[Ad],
				Ns: oa(h.newestItemTimestampUsec, 10),
				Ee: h[Ad] >= c.qk
			}, a[w](h), e[h.d[C]] = j;
			d = c.Eb;
			for (g = 0; h = d[g]; g++) h.d[C] in e || a[w]({
				d: h.d,
				h: h.h,
				Zd: 0,
				Ns: 0,
				Ee: m
			})
		}
		b()
	}, function () {
		Ph(a, c.Eb);
		b()
	})
};
aI[G].xe = function (a, b) {
	this.ve(a, function (c) {
		c ? b(c.Zd, c.Ee) : b(0, m)
	})
};

function Ms(a, b, c) {
	function d(r) {
		r[C] in e || (e[r[C]] = j, g[w](r))
	}
	var e = {}, g = [];
	d(b.cc.d);
	var h = b.ld;
	b = 0;
	for (var l; l = h[b]; b++) d(Ao(l));
	for (b = 0; h = g[b]; b++) bI(a, h, c)
}

function bI(a, b, c) {
	a.ve(b, function (d) {
		d == k && (d = {
			d: b,
			h: b[C],
			Zd: 0,
			Ee: m
		}, TH(a, d));
		if (!d.Ee) {
			var e = d.Zd,
				g = e + c;
			0 > g && (g = 0);
			g >= a.qk && (g = a.qk, d.Ee = j);
			d.Zd = g;
			g != e && DE(a, d)
		}
	})
}

function DE(a, b) {
	for (var c = 0, d; d = a.Ku[c]; c++) d(b.d, b.Zd, b.Ee, b.Ns)
}

function xv(a, b) {
	a.Ku[w](b)
}

function Fv(a, b, c) {
	var d = {
		prefix: k,
		di: j
	};
	if (c)
		for (var e in c) d[e] = c[e];
	c = d.prefix ? d.prefix + " " : "";
	return 0 < a ? (e = d.di ? "(" : "", e += a, b && (e += "+"), d.di && (e += ")"), c + e) : c
}

function Ev(a, b, c, d) {
	0 < c ? (b = Fv(c, d, {
		di: j
	}), u(a, b), T(a, "hidden")) : S(a, "hidden")
}

function bE() {
	aI[L](this);
	this.dj = k;
	this.$h = 0;
	this.Pf = k;
	this.Op = 0
}
R(bE, aI);
bE[G].zy = function () {
	0 != this.$h && (this.$h = 0, this.Pf && (n[Db](this.Pf), this.Pf = k), this.Wm = j, this[Ic]())
};
bE[G].Ng = function (a, b) {
	function c() {
		d.Pf = n[qd](function () {
			d.dj == k && (d.dj = new bB, V(d.dj, "activity", d.zy, m, d));
			var e = ah() - d.dj.hs;
			6E5 < e && d.$h < (36E5 > e ? 4 : 8) ? (d.$h++, c()) : (d.$h = 0, d.Pf = k, d.Wm = j, d[Ic]())
		}, 3E5)
	}
	this.Pf && n[Db](this.Pf);
	var d = this;
	bE.a.Ng[L](this, a, function () {
		b();
		c()
	})
};
bE[G].ts = function (a, b) {
	var c = "/api/0/unread-count";
	this.Wm ? (c = bk(c, "autorefresh", ++this.Op), this.Wm = m) : this.Op = 0;
	Jr(c, a, b, "_STREAM_LIST_UNREAD_COUNTS")
};
var cI = k;

function EG(a, b, c) {
	if (!cI) {
		var d = cf,
			d = d + ("/b/" + na);
		cI = new TB(d + "/", "reader");
		cI.ak({
			ac2: j,
			groups: j,
			domainGroups: j
		})
	}
	cI.lj(a, b, c)
}

function DG(a) {
	if (!a) return "";
	a[F] >= Ee && (a = a[Xc](0, Ee - 3 - 1) + "...");
	return a
}

function dI(a, b) {
	this.nz = a;
	this.Kj = b || k;
	this.cb = new Ty(i, j);
	var c = new zy;
	c.set("ok", "OK", m, m);
	c.set("cancel", "Cancel", m, j);
	Jy(this.cb, c)
}
ob(dI[G], function (a, b, c, d) {
	c && (c = DG(c));
	this.cb.La(eI({
		userName: _USER_NAME,
		userEmail: na,
		tA: c || "",
		Rv: b,
		Qv: d || "",
		Jj: this.Kj
	}));
	Cy(this.cb, a);
	V(this.cb, "dialogselect", this.jw, m, this);
	this.cb.D(j)
});
dI[G].jw = function (a) {
	if ("cancel" == a.key) return j;
	var b = new Zq,
		c = this,
		d = Dy(this.cb),
		e = this.Kj ? k : Y(d, "email-to-error"),
		g = Y(d, "email-subject-error"),
		h = Y(d, "email-comment-error");
	this.Kj || S(e, "hidden");
	S(g, "hidden");
	S(h, "hidden");
	ir(b, function () {
		br("Your email could not be sent", er, i, i);
		es(b[Eb], {
			emailTo: Q(fs, e),
			subject: Q(fs, g),
			comment: Q(fs, h)
		})
	});
	hr(b, function () {
		br("Your email has been sent", cr, i, i);
		c.cb.D(m)
	});
	a = [];
	a[w](["comment", Y(d, "email-comment")[Yb]]);
	a[w](["subject", Y(d, "email-subject")[Yb]]);
	this.Kj || (a[w](["emailTo", Y(d, "email-to")[Yb]]), a[w](["ccMe", Y(d, "email-ccme")[pd][bd]()]));
	(d = this.Tq()) && (a = a[Sb](d));
	b.Ic(this.nz, Mn(a));
	return m
};
dI[G].Tq = function () {
	return k
};

function fI(a, b) {
	this.bb = a;
	this.h = b;
	this.B = k
}
fI[G].ya = function () {
	this.B == k && (this.B = sn('<div class="bundle-item"><span class="bundle-feed-icon"></span><span class="bundle-feed-title">' + W(this.h) + "</span></div>"));
	return this.B
};

function lD() {
	this.Xo = this.Ve = k;
	this.lg = [];
	SC[L](this, "Create a bundle to share", P(this.bA, this));
	this.oj = [];
	this.Bd = new ZA;
	this.Dj = this.Gh = k
}
R(lD, SC);
O = lD[G];
O.ze = "bundle-creator";
O.bA = function (a) {
	var b = sn('<div class="bundle-creator-page"><a id="back-to-directory">&laquo; Back to discover page</a><div class="bundle-creator-help">You can put your bundles on your site or use them to invite new friends to Reader.</div>' + eD({
			id: "bundle-creator-create-button",
			Ke: j,
			content: "Create a new bundle"
		}) + '<div id="bundle-creation-area" class="hidden"><div id="bundle-meta-info"><img id="bundle-user-photo" src="' + W("/ui/profile-default-large.png") + '" alt=""><input type="text" id="bundle-name" length="20"><br><input type="text" id="bundle-desc" length="40"></div><div id="bundle-creator-subs-area"><table id="bundle-creator-drop-help"><tr><td><span>Drop a feed or folder here to add it to the bundle</span></td></tr></table><div id="bundle-creator-subs-list"></div></div><div id="bundle-creator-delete-target">Drag a subscription here to remove it from the bundle</div><div class="bundle-creator-button-area">' +
		eD({
			Ga: "bundle-creator-save",
			Ke: j,
			content: "Save"
		}) + eD({
			Ga: "bundle-creator-cancel",
			Ke: j,
			content: "Cancel"
		}) + '</div></div><div id="bundle-creator-user-bundles"><h1 id="bundle-creator-list-heading">Your bundles</h1><div id="bundle-creator-list"></div></div></div>');
	a[v](b);
	gI(this, b);
	this.bo();
	$p.Zu[zd]();
	this.Kk()
};
O.gh = function (a) {
	Jn(qk("bundle-creation-area"), a);
	Jn(qk("bundle-creator-create-button"), !a)
};
O.bo = function () {
	Jr("/api/0/list-user-bundle", P(this.Ry, this))
};
O.Ry = function (a) {
	var b = qk("bundle-creator-list");
	Ek(b);
	if (0 == a[ec][F]) this.gh(j);
	else
		for (var c = 0, d; d = a[ec][c]; c++) {
			var e = hI({
				Kv: "/bundle/" + nh(d.id),
				Mv: "/public/subscriptions/" + nh(d.id)
			});
			(new fD(d.id, d[id], d[ce], j, d[xc], d[ed], d[ve], j, m, d[Xb])).de(Y(e, "bundle-list-widget-container"));
			var g = 'Are you sure you want to delete <b>"' + (d[id] + '"</b>?');
			this.oj[w](V(Y(e, "bundle-list-delete"), "click", Q(lt, g, P(this.rq, this, d), i, j, i, i)));
			this.oj[w](V(Y(e, "bundle-list-edit"), "click", P(this.ow, this,
				d, e)));
			this.oj[w](V(Y(e, "email-bundle"), "click", Q(function (h) {
				(new iI(h.id, h[id]))[re]()
			}, d)));
			this.oj[w](V(Y(e, "bundle-clip"), "click", Q(function (h) {
				var l = Bo(h.id);
				h = h[id];
				var r = Qn("/clip-creator/" + l[C]),
					r = bk(r, "blogroll", "true"),
					l = 'Put "' + (vh(h) + '" on your website');
				h = new Ty("fr-clips-dialog", m);
				Cy(h, l);
				Jy(h, k);
				l = Ck("iframe", {
					src: r,
					id: "clips-iframe",
					frameborder: "0"
				});
				h.O()[v](l);
				h.D(j)
			}, d)));
			b[v](e)
		}
};
O.ow = function (a, b) {
	this.Kk();
	this.Yf.Ta(vh(a[id]));
	this.Aj.Ta(a[ve] ? vh(a[ve]) : "");
	for (var c = 0, d; d = a[ce][c]; c++) jI(this, d.id, d[id]);
	S(b, "bundle-list-entry-selected");
	this.Gh = a;
	this.Dj = b;
	this.gh(j)
};
O.rq = function (a, b) {
	(new $C(a.id, a[id]))[Cb](b || P(this.bo, this))
};

function gI(a, b) {
	Tv(Cv, qk("back-to-directory"), 0);
	a.Ve = Mv.gf;
	a.Yf = new kB("Add a bundle title");
	a.Yf.I(qk("bundle-name"));
	a.Aj = new kB("Add a brief description");
	a.Aj.I(qk("bundle-desc"));
	V(qk("bundle-creator-create-button"), "click", P(a.gh, a, j));
	V(Mv.Hj, "newdraggroup", a.lx, m, a);
	var c = qk("bundle-creator-subs-area");
	a.Xo = new YA(c);
	V(a.Xo, "drop", a.Jy, m, a);
	V(Y(b, "bundle-creator-save"), "click", a.Dy, m, a);
	V(Y(b, "bundle-creator-cancel"), "click", P(a.Kk, a, j), m, a);
	a.Ve && kI(a);
	var d = qk("bundle-creator-delete-target"),
		c = new YA(d);
	OA(a.Bd, c);
	a.Bd.ta();
	V(a.Bd, "dragstart", function (g) {
		wl(g.yb[ke], 0.5)
	});
	V(a.Bd, "dragover", function (g) {
		g.Fh == d && lI(e, d, j)
	});
	var e = a;
	V(a.Bd, "dragout", function (g) {
		g.Fh == d && lI(e, d, m)
	});
	V(a.Bd, "dragend", function (g) {
		lI(e, d, m);
		wl(g.yb[ke], 1)
	});
	V(c, "drop", function (g) {
		g.Fh == d && (g = g.yb, Hk(g[Kb].ya()), Lh(e.lg, g[Kb]), 0 == e.lg[F] && Jn(qk("bundle-creator-drop-help"), j))
	})
}

function lI(a, b, c) {
	b && $h(b, "drag-over", c)
}
O.Dy = function () {
	var a = lh(this.Yf.S()),
		b = lh(this.Aj.S()),
		c = Hh(this.lg, function (g) {
			return g.bb
		}),
		d = '"' + (a + '" could not be saved because the following characters are not allowed in bundle titles: " < > ? & / \\ ^ ,');
	if (jh(a)) Wy("You must specify a title for your bundle.");
	else if (-1 != a[Kd](De)) Wy(d);
	else if (!c || 1 > c[F]) Wy("You must have at least one feed in your bundle.");
	else {
		var e = new up(Z[Md], "bundle", [a]),
			d = P(function () {
				(new ZC(ko(e), a, c, b))[Cb](P(this.Cy, this))
			}, this);
		this.Gh && this.Gh.id != ko(e) ?
			this.rq(this.Gh, d) : d()
	}
};
O.Jy = function (a) {
	a[Zb]();
	if (a.yb[Kb] instanceof bG)
		if (a = a.yb[Kb], a instanceof fG) {
			jh(this.Yf.S()) && this.Yf.Ta(a[nc]().Zl);
			a = a.Hd();
			for (var b = 0, c; c = a[b]; b++) jI(this, c.d[C], c[nc]().rf)
		} else jI(this, a.d[C], a[nc]().rf)
};

function tF(a, b) {
	var c = io(b);
	tt(op, c, function (d) {
		for (var e = 0, g; g = d[e]; e++) jI(a, g.d[C], g.h);
		0 == d[F] && jI(a, b[C], c[nc]())
	});
	a.Yf.Ta(c[nc]() == k ? "" : qa(c[nc]()))
}

function jI(a, b, c) {
	for (var d = -1, e = 0, g; g = a.lg[e]; e++) {
		if (g.bb == b) return;
		0 > mh(g.h, c) && (d = e)
	}
	b = new fI(b, c);
	Qh(a.lg, d + 1, 0, b);
	c = qk("bundle-creator-subs-list"); - 1 == d ? c[$b](b.ya(), c[uc]) : c[Hc][d] ? Gk(b.ya(), c[Hc][d]) : c[v](b.ya());
	var h = b.ya(),
		d = new WA(h, b);
	d.ym = function () {
		return h
	};
	$A(a.Bd, d);
	PA(a.Bd, d);
	Jn(qk("bundle-creator-drop-help"), m)
}
O.Cy = function () {
	this.bo();
	RA(this.Bd);
	this.Kk()
};
O.Kk = function () {
	this.lg = [];
	Ek(qk("bundle-creator-subs-list"));
	this.Yf.Ta("");
	this.Aj.Ta("");
	this.Dj != k && T(this.Dj, "bundle-list-entry-selected");
	this.Dj = this.Gh = k;
	Jn(qk("bundle-creator-drop-help"), j);
	this.gh(m)
};
O.lx = function (a) {
	(this.Ve = a.mw) && kI(this)
};

function kI(a) {
	OA(a.Ve, a.Xo);
	var b = qk("bundle-creator-subs-area");
	V(a.Ve, "dragover", function (c) {
		c.Fh == b && lI(a, b, j)
	});
	V(a.Ve, "dragout", function (c) {
		c.Fh == b && lI(a, b, m)
	});
	V(a.Ve, "dragend", function () {
		lI(a, b, m)
	})
}
$p.Zu = new TC(lD);

function iI(a, b) {
	this.Lv = a;
	this.Sp = vh(b);
	dI[L](this, kf)
}
R(iI, dI);
ob(iI[G], function () {
	iI.a[re][L](this, 'Email your "' + (this.Sp + '" bundle'), "Note to attach to your bundle", this.Sp);
	var a = Y(this.cb.O(), "email-to");
	a[qc]();
	EG(a)
});
iI[G].Tq = function () {
	return [["bundle", this.Lv]]
};

function ID(a) {
	this.o = a;
	this.X = [];
	this.ci = new KA;
	this.yC = k;
	this.Ll = []
}
R(ID, uj);
ID[G].i = function () {
	ID.a.i[L](this);
	this.ci.s();
	Fh(this.X, Oj)
};
var mI = [/^http(s)?:\/\/[^.]+\.feedburner\.com\/.*$/i];

function nI(a, b) {
	var c = Nr(a.o)[Tc]("img"),
		c = Gh(c, function (l) {
			for (var r = 0, t; t = mI[r]; r++)
				if (t[yb](l.src)) return m;
			return j
		});
	if (0 == c[F]) oI(a, k, b);
	else {
		a.xw = c[F];
		for (var d = m, e = 0, g;
			(g = c[e]) && 50 != e; e++) {
			var h = new gk(g[x], g[M]);
			Lg(h[x]) && Lg(h[M]) && 0 < h[x] && 0 < h[M] ? ("undefined" == typeof g[Jd] && (g.naturalWidth = h[x]), "undefined" == typeof g[Yd] && (g.naturalHeight = h[M]), a.Zs(k, g)) : (MA(a.ci, qa(e), g), d = j)
		}
		d ? (a.X[w](V(a.ci, "load", a.Zs, m, a)), a.X[w](V(a.ci, "complete", P(a.Rs, a, b))), a.ci[Qd]()) : a.Rs(b)
	}
}
ID[G].Zs = function (a, b) {
	var c = a ? a[K] : b;
	if (c && Lg(c[Jd]) && Lg(c[Yd])) {
		var d = new gk(c[Jd], c[Yd]);
		!(3 < d[x] / d[M] && 1 < this.xw) && 576 < d[x] * d[M] && this.Ll[w](c)
	}
};
ID[G].Rs = function (a) {
	for (var b = k, c = k, d = 0, e; e = this.Ll[d]; d++) {
		var g = new gk(e[Jd], e[Yd]);
		if (b == k || g[x] * g[M] > c[x] * c[M]) b = e, c = g
	}
	oI(this, b, a)
};

function oI(a, b, c) {
	var d = a.o,
		e = Nr(d),
		g = d.vd[F],
		d = d.Sj() || "",
		h = m,
		l = k,
		h = e[Tc]("embed");
	0 < h[F] && (l = h[0]);
	e = 100 > d[F];
	h = g > d[F];
	g = "";
	e ? l ? (g = Mk(l), h = j) : b ? (g = new gk(b[Jd], b[Yd]), l = 250, g[x] > l && (d = g.Na().scale(l / g[x]), rl(b, d)), g = Mk(b), h = j) : g = d : b ? (g = new gk(b[Jd], b[Yd]), l = 100, g[x] > l && g.scale(l / g[x]), d = {
			Fx: b.src,
			Gx: g[x],
			Ex: g[M],
			snippet: d
		}, g = '<div class="thumb-snippet"><table class="thumb-snippet-table"><tbody><tr><td class="thumbnail"><img src="' + W(d.Fx) + '" width="' + W(d.Gx) + '" height="' + W(d.Ex) + '" /></td><td class="snippet">' +
		d[Gc] + "</td></tr></tbody></table></div>", h = j) : g = d;
	c({
		snippet: g,
		mC: h,
		pC: b,
		images: a.Ll
	})
}
ID[G].Sj = function (a) {
	if (this.mh) a(this.mh);
	else {
		var b = this;
		nI(this, function (c) {
			b.mh = c;
			a(b.mh)
		})
	}
};

function FG() {
	this.nj = new Di;
	this.Ul = []
}
var pI = [{
	ib: "http://www.blogger.com/favicon.ico",
	id: "blogger",
	name: "Blogger",
	url: "http://www.blogger.com/blog-this.g",
	oz: {
		t: "${body}",
		n: "${title}",
		u: "${url}"
	}
}, {
	ib: "http://del.icio.us/favicon.ico",
	id: "delicious",
	name: "Delicious",
	url: "http://delicious.com/save?url=${url}&title=${title}"
}, {
	ib: "http://digg.com/favicon.ico",
	id: "digg",
	name: "Digg",
	url: "http://digg.com/submit?phase=2&url=${url}"
}, {
	ib: "http://facebook.com/favicon.ico",
	id: "facebook",
	name: "Facebook",
	url: "http://facebook.com/sharer.php?u=${url}&t=${title}"
}, {
	ib: "http://friendfeed.com/favicon.ico",
	id: "friendfeed",
	name: "FriendFeed",
	url: "http://friendfeed.com/?title=${title}&link=${url}"
}, {
	ib: "http://www.instapaper.com/favicon.png",
	id: "instapaper",
	name: "Instapaper",
	url: "http://www.instapaper.com/edit?url=${url}&title=${title}"
}, {
	ib: "http://www.myspace.com/favicon.ico",
	id: "myspace",
	name: "MySpace",
	url: "http://www.myspace.com/Modules/PostTo/Pages/?t=${title}&u=${url}"
}, {
	ib: "http://www.orkut.com/favicon.ico",
	id: "orkut",
	name: "Orkut",
	url: "http://promote.orkut.com/preview?nt=orkut.com&tt=${title}&du=${url}"
}, {
	ib: "https://seesmic.com/favicon.ico",
	id: "pingfm",
	name: "Seesmic Ping",
	url: "https://seesmic.com/profile/ping/new?url=${url}&title=${title}&v=6&"
}, {
	ib: "http://posterous.com/images/favicon.png",
	id: "posterous",
	name: "Posterous",
	url: "http://posterous.com/share?linkto=${url}&title=${title}"
}, {
	ib: "http://reddit.com/favicon.ico",
	id: "reddit",
	name: "Reddit",
	url: "http://reddit.com/submit?url=${url}&title=${title}"
}, {
	ib: "http://stumbleupon.com/favicon.ico",
	id: "stumbleupon",
	name: "StumbleUpon",
	url: "http://www.stumbleupon.com/submit?url=${url}"
}, {
	ib: "http://assets.tumblr.com/images/favicon.gif",
	id: "tumblr",
	name: "Tumblr",
	url: "http://www.tumblr.com/share?v=3&u=${url}&t=${title}"
}, {
	ib: "https://twitter.com/favicon.ico",
	id: "twitter",
	name: "Twitter",
	url: "https://twitter.com/?status=${title} ${short-url}"
}];

function qI(a) {
	return {
		Sc: a.enabled,
		ib: a.iconUrl,
		name: a[Lc],
		url: a.url
	}
}

function GG(a, b) {
	Ct(Ff, function (c) {
		var d = {};
		try {
			d = gq(c)
		} catch (e) {}
		"builtinLinksEnabledState" in d && (a.nj.fj(d.builtinLinksEnabledState), rI(a));
		"customLinks" in d && (a.Ul = Hh(d.customLinks, qI));
		b && b()
	})
}

function MG(a) {
	return Hh(pI, function (b) {
		b = pi(b);
		b.Sc = a.nj[ge](b.id);
		return b
	})
}

function rI(a) {
	a.nj = (new Di(Hh(pI, function (b) {
		return b.id
	}))).Vm(a.nj)
}

function IG(a) {
	return Ih(Sh(Oh(a.Ul), MG(a)), function (b) {
		return b.Sc
	})
}
var Rv;

function Sv() {
	QF[L](this, j);
	this.vr = "recs-tree-item-";
	this.bg = this.fl = m
}
R(Sv, QF);
O = Sv[G];
O.se = function () {
	return X("recommendations-tree")
};
O.Cr = function () {};
O.rs = function (a) {
	Jr("/api/0/recommendation/list", function (b) {
		a(b.recs, [])
	}, function () {
		a([], [])
	}, "_RECOMMENDATIONS_LIST")
};
O.lq = function (a) {
	for (var b = [], c = 0, d; d = a[c]; c++) b[w](d[C]);
	this.Lh = new mp(b[Sb]([Fo() + "en"]), "Explore");
	this.lm = new Co(b, "Recommended sources", 'You have no recommendations.<p class="secondary">Use Google Reader or your Google Account more, and you will see recommended sources here. ' + ('<a href="' + W("http://www.google.com/support/reader/bin/answer.py?hl=en&answer=80468") + '" target="_blank">Learn more</a> about recommendations.</p>'));
	this.$a = new sI(this, this.Lh, "Explore", k, j);
	c = {
		d: Go(),
		h: "Recommended items"
	};
	this.$a.Ea(new tI(this, c, this.$a));
	b = new sI(this, this.lm, "Recommended sources", this.$a);
	this.$a.Ea(b);
	for (c = 0; d = a[c]; c++) d = {
		d: new cp(d[C], d[Rc], d[id]),
		h: d[id]
	}, b.Ea(new eG(this, d, b))
};
ob(O, function () {
	Sv.a[re][L](this);
	S(KE(this.$a), "lhn-section-primary");
	S(SF(this.$a)[Tc]("ul")[0], "lhn-section-secondary");
	hE()
});

function tI(a, b, c) {
	eG[L](this, a, b, c)
}
R(tI, eG);

function sI(a, b, c, d, e) {
	bG[L](this, a, d, "folder", b);
	if (e) a = j;
	else {
		if (a = !this.Qb.Qw) a = ZD, a = 800 >= (a && a.Zq() || wk(n))[M];
		a = a ? m : vx.Ce(this.d)
	}
	this.Kb = a;
	this.Lb = c;
	this.la = []
}
R(sI, bG);
sI[G].Hd = function () {
	return this.la
};
sI[G].Ea = function (a, b) {
	b ? this.la[ye](a) : this.la[w](a)
};
sI[G].Mc = function () {
	sI.a.Mc[L](this);
	this.Qb.Qw = j;
	hE()
};

function vC() {
	return sn('<div class="banner"><div class="primary-message"></div><div class="secondary-message"></div></div>')
};

function hI(a) {
	return sn('<table class="layout-table bundle-list-entry"><tr><td class="bundle-list-entry-cell bundle-list-entry-widget-cell"><div class="bundle-list-widget-container"></div><div class="bundle-list-user-links"><a class="bundle-list-edit unimportant-link">Edit</a> - <a class="bundle-list-delete unimportant-link">Delete</a></div></td><td class="bundle-list-entry-cell"><div class="bundle-list-share-link"><span class="email-bundle link">Email</span> to your friends</div><div class="bundle-list-share-link"><span class="bundle-clip link">Create a bundle clip</span> for your website or blog</div><div class="bundle-list-share-link">' +
		('<a class href="' + a.Kv + '" target="_blank">Add a link</a> to your website or blog') + '</div><div class="bundle-list-share-link">' + ('<a href="' + a.Mv + '" target="_blank">OPML file</a>') + "</div></td></tr></table>")
};

function bD(a) {
	var b = "";
	a = a[kd];
	for (var c = a[F], d = 0; d < c; d++) b += "<p>" + W(a[d][id]) + "</p>";
	return sn(b)
};

function eD(a) {
	return '<div role="wairole:button" tabIndex="0" class="goog-button goog-button-base unselectable goog-inline-block ' + (!a.Ke ? "goog-button-float-left" : "") + (a.bn ? " goog-menu-button" : "") + " goog-button-tight" + (a.Ga ? " " + a.Ga : "") + '"' + (a.id ? 'id="' + a.id + '"' : "") + '><div class="goog-button-base-outer-box goog-inline-block"><div class="goog-button-base-inner-box goog-inline-block"><div class="goog-button-base-pos"><div class="goog-button-base-content"><div class="goog-button-body">' + a[Ob] + "</div>" +
		(a.bn ? '<div class="goog-menu-button-dropdown"></div>' : "") + "</div></div></div></div></div>"
};

function HE(a) {
	return '<div id="captcha-question-area"><div>Type the characters you see in the picture below.</div><img src="' + W(a.uz) + '" width="200" height="70" alt="(Distorted text)"/><div><input type="text" id="captcha-answer"/></div></div>'
};

function eI(a) {
	var b = "<b>" + (W(a.Rv) + "</b> (Optional, no more than 1,000 characters)"),
		b = '<div class="email-area"><table class="email-entry-table"><tbody><tr><td class="field-name">From: </td><td>' + W(a.userName) + " &lt;" + W(a.userEmail) + '&gt;</td></tr><tr><td class="field-name"' + (a.Jj ? 'style="vertical-align: top"' : "") + ">To:</td><td>" + (a.Jj ? a.Jj : '<input type="text" class="email-to">') + '</td></tr><tr><td></td><td><div class="form-error-message email-to-error hidden"></div></td></tr><tr><td class="field-name">Subject:</td><td><input type="text" class="email-subject" value="' +
			W(a.tA) + '"></td></tr><tr><td></td><td><div class="form-error-message email-subject-error hidden"></div></td></tr><tr><td colspan="2">' + b + '<br><div class="form-error-message email-comment-error hidden"></div><textarea class="email-comment" rows="7">' + a.Qv[z]("<br>", "\n", "g") + "</textarea>";
	a.Jj || (b += '<div><label><input type="checkbox" name="ccMe" class="email-ccme" value="true">Send me a copy of this email</label></div>');
	return b + "</td></tr></tbody></table></div>"
};

function uI(a) {
	return '<div id="' + W(a.id) + "\" class='selector " + W(!a.Mm ? "no-icon" : "") + '\'><a href="" class="link">' + (a.Mm ? '<div class="selector-icon"></div>' : "") + '<span class="text">' + a[te] + "</span></a></div>"
}

function tv() {
	return '<div class="lhn-section-primary">' + uI({
		id: "reading-list-selector",
		label: '<span class="label">All items</span><span id="reading-list-unread-count" class="unread-count"></span>'
	}) + '</div><div class="lhn-section-secondary">' + uI({
		id: "star-selector",
		label: "Starred items",
		Mm: j
	}) + uI({
		id: "trends-selector",
		label: "Trends",
		Mm: j
	}) + uI({
		id: "directory-selector",
		label: "Browse for stuff"
	}) + '</div><div class="selectors-footer"></div>'
}

function Kv() {
	return '<div id="logo-section"><a id="logo-link">Reader</a></div>'
}

function Jv() {
	return '<div id="home-section">' + uI({
		id: "overview-selector",
		label: "Home"
	}) + "</div>"
}

function Gv() {
	return '<div id="lhn-add-subscription-section"><span id="lhn-add-subscription" class="jfk-button-primary">Subscribe</span></div>'
}

function Lv() {
	return '<div class="lhn-section-primary"><span id="sub-tree-header" class="unselectable">Subscriptions</span><span id="sub-tree-refreshing" class="hidden">refreshing...</span></div><div id="sub-tree-container" class="scroll-tree-container lhn-section-secondary"><ul id="sub-tree" class="scroll-tree"></ul></div>'
}

function Qv() {
	return '<div id="recommendations-tree-container" class="scroll-tree-container"><ul id="recommendations-tree" class="scroll-tree"></ul></div><div class="lhn-section-footer"><a href="" id="recommendations-tree-view-all">View all recommendations &raquo;</a></div>'
};

function AH(a) {
	return sn('<div class="action-area ' + (a.Jq ? W(a.Jq) : "") + '">' + a.contents + "</div>")
}

function CG(a) {
	return '<div class="email-this-area"><table class="email-entry-table"><tbody><tr><td class="field-name">From: </td><td>' + W(a.userName) + " &lt;" + W(a.userEmail) + '&gt;</td></tr><tr><td class="field-name">To:</td><td><input type="text" class="email-this-to"><div class="form-error-message email-this-to-error hidden"></div></td></tr><tr><td class="field-name">Subject:</td><td><input type="text" class="email-this-subject"><div class="form-error-message email-this-subject-error hidden"></div></td></tr><tr><td colspan="2"><b>Note to go along with the item:</b> (Optional, no more than 1,000 characters)<br><div class="form-error-message email-this-comment-error hidden"></div><textarea class="email-this-comment" rows="6"></textarea><div><label><input type="checkbox" name="ccMe" class="email-this-ccme" value="true" tabindex="0">Send me a copy of this email</label></div><div class="email-this-buttons" tabindex=\'-1\'>' + eD({
		Ga: "email-this-send",
		content: "Send"
	}) + eD({
		Ga: "email-this-cancel",
		content: "Cancel"
	}) + "</div></td></tr></tbody></table></div>"
}

function uH(a) {
	return 'from <a class="entry-source-title" target="_blank">' + (a.Uo + "</a>")
}

function vH(a) {
	var b = "";
	a = a.qd;
	for (var c = a[F], d = 0; d < c; d++) var e = a[d],
	e = "via " + ('<a class="entry-via-link link" target="_blank" href="' + So(e.d) + '">' + (e.h + "</a>")), b = b + ('<div class="entry-via plain-via">' + e + "</div>");
	return b
};

function $F(a) {
	var b = '<li class="' + W(a[ld]) + " unselectable" + (a.Ce ? " expanded" : " collapsed") + (a.bs ? " unread" : "") + '" id="' + W(a.VA) + '"><div class="' + W(a.LA) + (a.NA ? " hidden" : "") + '"></div><a class="link" href="' + W(a.rA) + '" id="' + W(a.UA) + '">' + (a.Lq ? '<div style="background-image: url(' + W(a.Lq) + ')" class="' + W(a.tr) + ' favicon" id="' + W(a.Hu) + '"></div>' : '<div class="' + W(a.tr) + '" id="' + W(a.Hu) + '"></div>') + '<div class="' + W(a.ty) + " " + W(a.sy) + (a.bs ? " name-unread" : "") + '" id="' + W(a.WA) + '">' + W(a.displayName) + "</div>" +
		(a.wu ? '<div class="' + W(a.BA) + '" id="' + W(a.XA) + '">' + W(a.wu) + "</div>" : "") + '<div class="' + W(a.$A) + '" id="' + W(a.YA) + '">' + W(a.aB) + "</div>" + (a.fs ? a.fs : "") + "</a>";
	if (0 < a[tc][F] || a.Rx) {
		b += "<ul>";
		a = a[tc];
		for (var c = a[F], d = 0; d < c; d++) b += TF(a[d], k);
		b += "</ul>"
	}
	return b + "</li>"
};

function zG(a) {
	var b = "Did you mean to search for feeds related to <em>" + (W(a[jd]) + "</em>?");
	a = "You searched for items in your subscriptions related to <em>" + (W(a[jd]) + ('</em>.  Are you trying to subscribe to a feed?  Try using the <b>Add a subscription</b> button on the left, or try <span class="link try-search-on-feeds-link">searching for feeds about <em>' + (W(a[jd]) + "</em></span>.")));
	return sn('<div class="interruption preview-interruption"><div class="interruption-header">' + b + "</div><p>" + a + '</p><span class="dismiss-link link">Dismiss</span></div>')
}

function BG(a) {
	var b = '<div class="interruption small-interruption">';
	a.uy ? b += '<div class="poptart-interruption"><div class="close-box dismiss-link"></div><img id="newspaper-icon" alt="" src="' + W("/ui/newspaper-icon.png") + '"/><p id="newspaper-icon-text">Reader is like a magazine you design</p><h2>Welcome to Google Reader</h2><p>Google Reader helps you find and keep track of interesting stuff on the web. You can subscribe to your favorite websites, and keep up with what\'s popular. New content comes to your Google Reader when it\'s posted, so you don\'t need to visit individual sites.</p><p>Plus, Reader keeps track of which items you\'ve read, so you only see unread items when you come back. If there\'s a blue border to the left of an item, Reader is marking that item as read.</p><p><img width="20" height="23" alt="" id="down-arrow" src="' +
		W("/ui/down-arrow.png") + '"/><b>Give it a try by scrolling down to the next item!</b><iframe src="' + W("/ui/en-conversion-tracking?hl=en") + '" frameborder="0" scrolling="no" height="1" width="1"></iframe></p></div>' : (a = "These are items from the Internet that you might enjoy. " + ('<a target="_blank" class="learn-more-link" href="' + W("http://www.google.com/support/bin/answer.py?hl=en&answer=164681") + '">Learn more</a><span class="dismiss-link link">Dismiss</span>'),
			b += "<div>" + a + "</div>");
	return sn(b + "</div>")
};

function xs(a) {
	return '<span class="search-stream-title">Search for <em>' + (W(a[jd]) + "</em>") + "</span>"
};
